Optical Imaging Systems And Methods Utilizing Nonlinear And/Or Spatially Varying Image Processing

ABSTRACT

Systems and methods include optics having one or more phase modifying elements that modify wavefront phase to introduce image attributes into an optical image. A detector converts the optical image to electronic data while maintaining the image attributes. A signal processor subdivides the electronic data into one or more data sets, classifies the data sets, and independently processes the data sets to form processed electronic data. The processing may optionally be nonlinear. Other imaging systems and methods include optics having one or more phase modifying elements that modify wavefront phase to form an optical image. A detector generates electronic data having one or more image attributes that are dependent on characteristics of the phase modifying elements and/or the detector. A signal processor subdivides the electronic data into one or more data sets, classifies the data sets and independently processes the data sets to form processed electronic data.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application claims priority to U.S. Provisional Patent ApplicationNo. 60/788,801, filed 3 Apr. 2006 and incorporated herein by reference.

BACKGROUND

Certain optical imaging systems image electromagnetic energy emitted byor reflected from an object through optics, capture a digital image ofthe object, and process the digital image to enhance image quality.Processing may require significant computational resources such asmemory space and computing time to enhance image quality.

For human viewers, quality of an image is a subjective qualification ofthe properties of an image. For machine vision applications, quality ofan image is related to a degree to which an image objectivelyfacilitates performance of a task. Processing of electronic image datamay improve image quality based either on subjective or objectivefactors. For example, human viewers may consider subjective factors suchas sharpness, brightness, contrast, colorfulness, noisiness,discriminability, identifiability and naturalness. Sharpness describesthe presence of fine detail; for example, a human viewer may expect tosee individual blades of grass. Brightness describes overall lightnessor darkness of an image; for example, a sunny outdoor scene isconsidered bright whereas a shadowed indoor scene is considered dark.Contrast describes a difference in lightness between lighter and darkerregions of an image. Colorfulness describes intensity of hue of colors;for example, a gray color has no colorfulness, while a vivid red hashigh colorfulness. Noisiness describes a degree to which noise ispresent. Noise may be introduced, for instance, by an image detector(e.g., as fixed pattern noise, temporal noise, or as effects ofdefective pixels of the detector) or may be introduced by imagemanipulating algorithms (e.g., uniformity defects). Discriminabilitydescribes an ability to distinguish objects in an image from each other.Identifiability describes a degree to which an image or portion thereofconforms with a human viewer's association of the image or a similarimage. Naturalness describes a degree to which an image or portionsthereof match a human viewer's idealized memory of that image orportion; for example, green grass, blue skies and tan skin areconsidered more natural the closer that they are perceived to theidealized memory.

For machine vision applications, quality of an image is related to adegree to which an image is appropriate to a task to be performed. Thequality of an image associated with a machine vision application may berelated to a certain signal-to-noise ratio (SNR) and a probability ofsuccessfully completing a certain task. For example, in a packagesorting system, images of packages may be utilized to identify the edgesof each package to determine package sizes. If the sorting system isable to consistently identify packages, then a probability of success ishigh and therefore a SNR for edges in the utilized images is sufficientfor performing the task. For iris recognition, specific spatialfrequencies of features within an iris must be identified to supportdiscrimination between irises. If an SNR for these spatial frequenciesis insufficient, then an iris recognition algorithm may not function asdesired.

SUMMARY

In an embodiment, an imaging system includes optics having one or morephase modifying elements that modify wavefront phase to introduce imageattributes into an optical image. A detector converts the optical imageto electronic data while maintaining the image attributes. A signalprocessor subdivides the electronic data into one or more data sets,classifies the data sets based at least on the image attributes, andindependently processes the data sets to form processed electronic data.

In one embodiment, an imaging system includes optics having one or morephase modifying elements that modify wavefront phase to form an opticalimage. A detector converts the optical image to electronic data havingone or more image attributes that are dependent on characteristics ofthe phase modifying elements and/or the detector. A signal processorsubdivides the electronic data into one or more data sets, classifiesthe data sets based at least on the image attributes, and independentlyprocesses the data sets to form processed electronic data.

In one embodiment, an imaging system includes optics having one or morephase modifying elements that modify wavefront phase topredeterministically affect an optical image. A detector converts theoptical image to electronic data. A digital signal processor subdividesthe electronic data into one or more data sets and classifies the datasets, based at least in part on a priori knowledge about how the phasemodifying elements modify the wavefront phase. The digital signalprocessor independently processes each of the data sets to formprocessed electronic data.

In one embodiment, an imaging system includes optics, including one ormore phase modifying elements, that alter wavefront phase and produce anoptical image with at least one known image attribute. A detectorconverts the optical image to electronic data that, while preserving theimage attribute, is divisible into data sets. A digital signal processordetermines at least one characteristic for each of the data sets andprocesses the data sets to modify the image attribute in a degree andmanner that is independently adjustable for the data sets, to generateprocessed electronic data.

In one embodiment, an imaging system includes optics having one or morephase modifying elements that modify wavefront phase to introduce one ormore image attributes into an optical image. A detector converts theoptical image to electronic data while maintaining the image attributes.A digital signal processor determines one or more characteristics of theelectronic data, and provides nonlinear processing of the electronicdata to modify the image attribute and to form processed electronicdata.

In one embodiment, an imaging system includes optics having one or morephase modifying elements that modify wavefront phase to introduce one ormore image attributes into an optical image. A detector converts theoptical image to electronic data while maintaining the image attributes.A digital signal processor subdivides the electronic data into one ormore data sets, classifies the data sets, based at least on the imageattributes, and independently and nonlinearly processes the data sets toform processed electronic data.

In one embodiment, a method for generating processed electronic dataincludes modifying phase of a wavefront from an object to introduce oneor more image attributes into an optical image formed by an imagingsystem. The method includes converting the optical image to electronicdata while maintaining the image attributes, subdividing the electronicdata into one or more data sets, classifying the data sets based atleast on the one or more image attributes, and independently processingthe data sets to form processed electronic data.

A software product includes instructions stored on computer-readablemedia. The instructions, when executed by a computer, perform steps forprocessing electronic data generated by (a) modifying phase of awavefront from an object to introduce one or more image attributes intoan optical image formed by an imaging system and (b) converting theoptical image to electronic data while maintaining the image attributes.The instructions include instructions for subdividing the electronicdata into one or more data sets, classifying the data sets based atleast on the image attributes, and independently processing the datasets to form the processed electronic data.

BRIEF DESCRIPTION OF DRAWINGS

FIG. 1 shows an imaging system imaging electromagnetic energy emittedby, or reflected from, objects in an exemplary scene.

FIG. 2 shows an enlarged image of the scene of FIG. 1, to illustratefurther details therein.

FIG. 3 shows exemplary components and connectivity of the imaging systemof FIG. 1.

FIG. 4 is a flowchart of a process that may be performed by the imagingsystem of FIG. 1, in an embodiment.

FIG. 5A through 5E illustrate examples of nonlinear and/or spatiallyvarying image processing.

FIG. 5F shows a plot of linescans from a hypothetical imaging system.

FIG. 6 shows an image of an object that includes regions that may beidentified as having differing characteristics.

FIGS. 7A, 7B and 7C illustrate three approaches to segmentation of animage based upon defined sets of pixels.

FIG. 8A shows an object from the scene of FIG. 2 superimposed onto a setof pixels.

FIG. 8B shows the pixels of FIG. 8A segregated into data sets accordingto thresholding of the object shown in FIG. 8A.

FIGS. 9A, 9B and 9C illustrate pixel blocks that are weighted orsegmented.

FIG. 10A illustrates two objects.

FIG. 10B shows an image “key.”

FIG. 11 illustrates how line plots may be utilized to represent opticalintensity and/or electronic data magnitude as a function of spatiallocation.

FIG. 12 illustrates processing electronic data that falls within one ofthe regions shown in FIG. 6.

FIG. 13 illustrates processing electronic data that falls within anotherof the regions shown in FIG. 6.

FIG. 14 illustrates processing electronic data that falls within anotherof the regions shown in FIG. 6.

FIG. 15 illustrates processing electronic data that falls within twoother regions shown in FIG. 6.

FIG. 16 shows a linescan of a high contrast image region of a scene.

FIG. 17 shows a linescan of the objects represented in FIG. 16.

FIG. 18 illustrates electronic data of the linescan of the objectsrepresented in FIG. 16.

FIG. 19 illustrates processed electronic data of the linescan of theobjects represented in FIG. 16.

FIG. 20 shows a linescan of a low contrast image region of a scene.

FIG. 21 shows a linescan of the objects represented in FIG. 20.

FIG. 22 illustrates electronic data of the linescan of the objectsrepresented in FIG. 20.

FIG. 23 illustrates processed electronic data of the linescan of theobjects represented in FIG. 20.

FIG. 24 illustrates electronic data of the linescan of the objectsrepresented in FIG. 20, processed differently as compared to FIG. 23.

FIG. 25 illustrates an optical imaging system utilizing nonlinear and/orspatially varying processing.

FIG. 26 schematically illustrates an optical imaging system withnonlinear and/or spatially varying color processing.

FIG. 27 shows another optical imaging system 2700 utilizing nonlinearand/or spatially varying processing.

FIG. 28 illustrates how a blur removal block may process electronic dataaccording to weighting factors of various spatial filter frequencies.

FIG. 29 shows a generalization of weighted blur removal for N processesacross M multiple channels.

FIG. 30A through FIG. 30D illustrate operation of a prefilter to removeblur while a nonlinear process removes remaining blur to form a furtherprocessed image.

FIG. 31A through FIG. 31D illustrate operation of a prefilter to removeblur while a nonlinear process removes remaining blur to form a furtherprocessed image.

FIG. 32A-FIG. 32D show images of the same object of FIG. 30A-FIG. 30Dand FIG. 31A-FIG. 31D, but including temperature dependent optics.

FIG. 33 shows an object to be imaged, and illustrates how colorintensity information may be utilized to determine spatially varyingprocessing.

FIG. 34A-FIG. 34C show RGB images obtained from imaging the object shownin FIG. 33.

FIG. 35A-FIG. 35C show YUV images obtained from imaging the object shownin FIG. 33.

FIG. 36-FIG. 36C show electronic data of the object in FIG. 33, takenthrough an imaging system that utilizes cosine optics and converts theimage into YUV format.

FIG. 37A-FIG. 37C illustrate results obtained when the YUV electronicdata shown in FIG. 36-FIG. 36C is processed and converted back into RGBformat.

FIG. 38A-FIG. 38C illustrate results obtained when RGB reconstruction ofan image uses only the Y channel of a YUV image.

FIG. 39A-FIG. 39C illustrate results obtained when the YUV electronicdata shown in FIG. 36-FIG. 36C is processed and converted back into RGBformat, with the processing varied according to the lack of intensityinformation.

FIG. 40 illustrates how a blur removal block may generate a weighted sumof nonlinear operators.

FIG. 41 illustrates a blur removal block containing nonlinear operatorsthat operate differently on different data sets of an image or ondifferent image channels.

FIG. 42 illustrates a blur removal block that processes electronic datafrom different data sets of an image, or from different channels, ineither serial or parallel fashion, or recursively.

FIG. 43 shows a flowchart of a method for selecting process parametersfor enhancing image characteristics.

DETAILED DESCRIPTION OF DRAWINGS

FIG. 1 shows an imaging system 100 imaging electromagnetic energy 105emitted by, or reflected from, objects in an exemplary scene 200.Imaging system 100 includes optics and a detector that captures adigital image of scene 200 as electronic data; it may process theelectronic data to enhance image quality in processed electronic data.Although imaging system 100 is represented in FIG. 1 as a digitalcamera, it may be understood that imaging system 100 may be included aspart of a cell phone or other device. It is appreciated that system 100may include components that cooperate with each other over a distance toperform the tasks of image capture and image processing, as explainedbelow.

System 100 may be configured to improve quality of an image in processedelectronic data by processing the electronic data in a spatially varyingprocess. System 100 may also be configured to improve quality of animage by processing the electronic data in a nonlinear process, whichmay offer certain advantages over linear processing. System 100 may alsobe configured to improve quality of an image by processing theelectronic data in a nonlinear and spatially varying process.

FIG. 2 shows an enlarged image of exemplary scene 200 to illustratefurther details therein. Scene 200 is associated with raw electronicdata having multiple image regions; each of these image regions hascertain image characteristics and/or subspaces that may cause the imageto benefit from nonlinear, spatially varying and/or optimized processingas described hereinbelow. Such image characteristics and/or subspacesmay be divided into broad categories including signal, noise and spatialcategories. The signal category may include image characteristics orsubspace attributes such as color saturation, dynamic range, brightnessand contrast. The noise category or subspace may include imagecharacteristics such as fixed-pattern noise (“FPN”), random noise anddefect pixels. The spatial category or subspace may include imagecharacteristics such as sharpness of transitions and edges, aliasing,artifacts (e.g., ghosting), depth of field (“DOF”) or range, texture andspatial detail (i.e., spatial frequency content). Other categorizationsor subspace definitions are possible within the scope of thisdisclosure, and other or fewer image characteristics listed above may bewithin each category.

A number of the aforementioned image characteristics now are discussedin association with scene 200. For example, a sky area 210 of scene 200has very little spatial detail; that is, such areas have mostly lowspatial frequency content, little high spatial frequency content and lowcontrast. Clouds 220 may have only a small amount of spatial detail.Certain areas or objects in the scene have very high spatial detail butlow contrast; that is, such areas have information at low through highspatial frequencies, but intensity differences with respect to a localbackground are low. For example, in scene 200, grass 230 that is in ashadow 240 cast by a fence 250 has high spatial detail but low contrast.Other areas or objects of scene 200 have very high spatial detail andvery high contrast; that is, such areas have information throughout manyspatial frequencies, and intensity differences with respect to localbackground are high. A sun 260 and a fence 250 in scene 200 are examplesof high spatial frequency, high contrast areas. Still other areas orobjects of scene 200 may saturate the detector; that is, intensity orcolor of such objects may exceed the detector's ability to differentiateamong the intensities or colors present in the object. The center of sun260 is one such object that may saturate the detector. Certain areas orobjects, such as the checkerboard pattern of the weave of a basket 270of a hot air balloon 280, have moderate amounts of spatial detail andlow contrast; that is, such areas have information at low throughmoderate spatial frequencies, with low intensity differences withrespect to local background. Scene 200 may be dark (e.g., image regionswith low intensity information) if it is captured by system 100 atnight. Still other regions of scene 200 may include regions that havesimilar levels of spatial detail as compared to each other, but may varyin color, such as color bands 285 of hot air balloon 280.

The aforementioned areas of a digital image of a scene (e.g., scene 200)may be processed by nonlinear and/or spatially varying methods discussedherein. Such processing may be performed instead of or in addition toglobal processing of images utilizing linear processing, which processesan entire image in a single fashion. For example, in the context of thepresent disclosure, global linear processing may be understood to meanthe application of one or more linear mathematical functions appliedunchangingly to an entire image. A linear mathematical operation may bedefined as an operation that satisfies the additivity property (i.e.,f(x+y)=f(x)+f(y)) and the homogeneity property (i.e., f(αx)=αf(x) forall α.). For example, multiplication of all pixels by a constant value,and/or convolution of pixels with a filter kernel, are linearoperations. Nonlinear operations are operations that do not satisfy atleast one of the additive and homogeneity properties.

Due to large variations in the characteristics of many images, globallinear processing may not produce an acceptable result in all areas ofthe image. For example, a linear global operation may operate upon imageareas containing moderate spatial frequency information but may“overprocess” areas containing low or high spatial frequencyinformation. “Overprocessing” occurs when a linear process applied to anentire image adds or removes spatial frequency information to thedetriment of an image, for example according to a viewer's perception.Overprocessing may occur, for example, when a spatial frequency responseof a linear process (e.g., a filter kernel) is not matched to an imagecharacteristic of an area being processed. A spatially varying processis a process that is not applied to the entire set of pixels uniformly.Both linear and non-linear processes may be applied as a spatiallyvarying process or spatially varying set of processes. The applicationof nonlinear and/or spatially varying image processing may lead tosimplification of image processing since “smart” localized, possiblynonlinear, functions may be used in place of global linear functions toproduce more desirable image quality for human perception, orobjectively improved task specific results for task-based applications.

FIG. 3 shows exemplary components and connections of imaging system 100.Imaging system 100 includes an image capturing subsystem 120 havingoptics 125 and a detector 130 (e.g., a CCD or CMOS detector array) thatgenerates electronic data 135 in response to an optical image formedthereon. Optics 125 may include one or more optical elements such aslenses and/or phase modifying elements, sometimes denoted as “wavefrontcoding (“WFC”) elements” herein. Information regarding phase modifyingelements and processing related thereto may be found in U.S. Pat. Nos.5,748,371; 6,525,302, 6,842,292, 6,873,733, 6,911,638, 6,940,949,7,115,849 and 7,180,673, and U.S. Published Patent Application No.2005/0197809A1, each of which is incorporated by reference herein. Thephase modifying elements modify wavefront phase to introduce imageattributes such as a signal space, a null space, an interferencesubspace, spatial frequency content, resolution, color information,contrast modification and optical blur. Put another way, the phasemodifying elements may modify wavefront phase to predeterministicallyaffect an optical image formed by optics 125. A processor 140 executesunder control of instructions stored as software 145. Imaging system 100includes memory 150 that may include software storage 155; softwarestored in software storage 155 may be available to processor 140 assoftware 145 upon startup of system 100.

Software 145 generally includes information about image capturingsubsystem 120, such as for example lens or phase function prescriptions,constants, tables or filters that may be utilized to tailor imageacquisition or processing performed by system 100 to the physicalfeatures or capabilities of image capturing subsystem 120. It may alsoinclude algorithms, such as those described herein, that enhance imagequality. Processor 140 interfaces with image capturing subsystem 120 tocontrol the capture of electronic data 135; upon capture, electronicdata 135 may transfer to processor 140 or to memory 150. Processor 140and memory 150 thereafter cooperate to process electronic data 135 invarious ways as described further herein, forming processed electronicdata 137.

Processor 140 and memory 150 may take a variety of physical forms. Thearrangement shown in FIG. 3 is illustrative, and does not represent arequired physical configuration of the components; nor does it requirethat all such components be in a common physical location, be containedin a common housing or that the connections shown be physicalconnections such as wires or optical fiber. For example, processor 140and memory 150 may be portions of a single application-specificintegrated circuit (“ASIC”) or they may be separate computer chips ormultiple chips; they may be physically located in a device that includesimage capturing subsystem 120 or in a separate device, with physical orwireless links forming certain of the connections shown in FIG. 3.Similarly, it is appreciated that actions performed by components ofsystem 100 may or may not be separated in time, as discussed furtherbelow. For example, images may be acquired at one time, with processingoccurring substantially later. Alternatively, processing may occursubstantially in real time, for example so that a user can promptlyreview results of a processed image, enabling the user to modify imageacquisition and/or processing parameters depending on the processedimage.

Raw or processed electronic data may be transferred to an optionaldisplay device 160 for immediate display to a user of system 100.Additionally or alternatively, raw electronic data 135 or processedelectronic data 137 may be retained in memory 150. Imaging system 100may also include a power source 180 that connects as necessary to any ofthe other components of imaging system 100 (such connections are notshown in FIG. 3, for clarity of illustration).

An imaging system 100 typically includes at least some of the componentsshown in FIG. 3, but need not include all of them; for example animaging system 100 might not include display device 160. Alternatively,an imaging system 100 might include multiples of the components shown inFIG. 3, such as multiple image capturing subsystems 120 that areoptimized for specialized tasks, as described further herein.Furthermore, imaging system 100 may include features other than thoseshown herein such as, for example, external power connections and wiredor wireless communication capabilities among components or to othersystems.

FIG. 4 is a flowchart that shows a process 400 that may be performed bysystem 100 of FIG. 3. Step 410 converts an optical image to electronicdata utilizing system parameters 405. Step 410 may be performed, forexample, by optics 125 forming the optical image on detector 130, whichin turn generates electronic data 135 in response to the optical image.System parameters 405 may include exposure times, aperture setting, zoomsettings and other quantities associated with digital image capture.Step 430 determines data sets of the electronic data for linearprocessing, as described further below. Step 430 may be performed, forexample, by processor 140 under the control of software 145; step 430may utilize electronic data 135 or processed electronic data 137 (thatis, step 430 and other processing steps herein may process electronicdata as originally captured by a detector, or data that has already beenprocessed in some way). Steps 440 or 445 perform linear processing orpre-processing of the electronic data or one or more data sets thereof,respectively, as determined by step 430. Steps 440 or 445 may beperformed, for example, by processor 140 under the control of software145, utilizing electronic data 135 or data sets thereof, respectively,as described further below. Step 450 determines data sets of theelectronic data for nonlinear processing, as described further below.Step 450 may be performed, for example, by processor 140 under thecontrol of software 145 and utilizing electronic data 135 or processedelectronic data 137. Steps 460 or 465 perform nonlinear processing ofelectronic data 135, processed electronic data 137 or one or more datasets thereof, respectively, as determined by step 450. Steps 460 or 465may be performed, for example, by processor 140 under the control ofsoftware 145, utilizing electronic data 135 or data sets thereof,respectively, as described further below. Steps 430, 440 and 445 may beconsidered as a linear processing section 470, and steps 450, 460 and465 may be considered as a nonlinear processing section 480; processingsections 470 and 480 may be performed in any order and/or number oftimes in process 400. Furthermore, successive execution of processingsections 470 and 480 need not determine the same data sets as a firstexecution of sections 470 and 480; for example, a scene may first bedivided into data sets based on color information and linearly processedaccordingly, then divided into different data sets based on intensityinformation and linearly processed accordingly, then divided intodifferent data sets based on contrast information and nonlinearlyprocessed accordingly. When no further processing is needed, process 400ends.

FIGS. 5A through 5E illustrate examples of nonlinear and/or spatiallyvarying image processing in accord with process 400, FIG. 4, through aset of icons that depict aspects of each example such as (a) inputelectromagnetic energy from an object, (b) optics, (c) electronic dataand (d) processing representations. FIG. 5F illustrates specific changesin linescans that may be provided by different classes ofphase-modifying optics (see FIG. 11 for an explanation of linescans). Inparticular, FIG. 5A illustrates nonlinear processing with wavefrontcoding (“WFC”) optics. Optics (e.g., optics 125, FIG. 3) for a systemutilizing processing as shown in FIG. 5A are for example designed suchthat electronic data formed from an optical image (e.g., electronic data135, FIG. 3) is suited to a particular type of nonlinear and/orspatially varying processing. In one example, the optics and processingare jointly optimized in a process that forms a figure of merit based onboth the optics design and the signal processing design. In FIG. 5A,icon 502 represents a spatial intensity linescan of electromagneticenergy emanating from an object as a square wave; that is, an objectthat forms a single perfect step function such as a black object againsta white background or vice versa. Icon 504 represents specially designedWFC optics. Icon 506 represents a linescan from electronic data formedfrom an optical image of the object represented by icon 502. Due tolimitations of optics and a detector, the linescan from the electronicdata does not have the vertical sides or sharp corners as shown in icon502; rather, the sides are not vertical and the corners are rounded.However, the linescan from the electronic data is “smooth” and does notinclude additional “structure” as may sometimes be found in electronicdata generated by WFC optics, such as for example oscillations orinflection points at transitions. In this context, “smooth” isunderstood to mean a linescan that varies substantially monotonically inresponse to an edge in an object being imaged, rather than a linescanthat has added “structure,” such as oscillations, at abrupt transitions(see also FIG. 5F). Icon 508 represents nonlinear processing of theelectronic data. Icon 510 represents a linescan from electronic dataformed by the nonlinear processing, and shows restoration of thevertical sides and sharp corners as seen in icon 502.

FIG. 5B illustrates nonlinear processing, linear pre-processing and WFCoptics. In FIG. 5B, linear pre-processing generates partially processedelectronic data that is suited to a nonlinear processing step. In FIG.5B, icon 512 represents a spatial intensity linescan of electromagneticenergy emanating from an object as a square wave. Icon 514 representsWFC optics. Icon 516 represents a linescan from electronic data formedfrom an optical image of the object represented by icon 512. Theelectronic data represented by icon 516 has additional structure ascompared to icon 506, such as inflection points 516A, which may be dueto effects of the WFC optics. Icon 518 represents a linear processingstep (e.g., a linear convolution of the electronic data represented byicon 516, with a filter kernel). Processing represented by icon 518 maysometimes be referred to as “pre-processing” or a “prefilter” herein.Icon 520 represents a linescan from electronic data formed by the linearprocessing represented by icon 518; the electronic data represented byicon 520 does not have the additional structure noted in icon 516. Icon522 represents nonlinear processing of the electronic data representedin icon 520. Icon 524 represents a linescan from electronic data formedby the nonlinear processing, and shows restoration of the vertical sidesand sharp corners as seen in icon 512.

FIG. 5C illustrates nonlinear processing, linear pre-processing andspecialized WFC optics. In FIG. 5C, optics (e.g., optics 125, FIG. 3)are designed to code a wavefront of electromagnetic energy forming theimage in a customizable way such that linear pre-processing of captureddata (e.g., electronic data 135, FIG. 3) generates partially processedelectronic data that is suited to a nonlinear processing step. Utilizingcustomizable wavefront coding and linear pre-processing may reduceprocessing resources (e.g., digital signal processor complexity and/ortime and/or power required for processing) required by system 100 toproduce electronic data. In FIG. 5C, icon 530 represents a spatialintensity linescan of electromagnetic energy emanating from an object asa square wave. Icon 532 represents WFC optics that code a wavefront ofelectromagnetic energy in a customizable way. Icon 534 represents alinescan from electronic data formed from an optical image of the objectrepresented by icon 530. The electronic data represented by icon 534 issmooth and contains minimal additional structure. Icon 536 represents alinear processing step (e.g., a linear convolution of the electronicdata represented by icon 534, with a filter kernel). The linearprocessing represented by icon 536 may for example be a moderatelyaggressive filter that tends to sharpen edges but is not so aggressiveso as to add overshoot or undershoot to the edges; processingrepresented by icon 536 may also sometimes be referred to as“pre-processing” or “prefiltering” herein. Icon 538 represents alinescan from electronic data formed by the linear processingrepresented by icon 536 that is improved over the electronic data notedin icon 534, but does not have the vertical sides and sharp cornersassociated with the object represented by icon 530. Icon 540 representsnonlinear processing of the data represented in icon 538. Icon 542represents a linescan from electronic data formed by the nonlinearprocessing, and shows restoration of the vertical sides and sharpcorners as seen in icon 530.

FIG. 5D illustrates another example of nonlinear processing, linearpre-processing and specialized WFC optics. Like FIG. 5C, in FIG. 5Doptics (e.g., optics 125, FIG. 3) code a wavefront of electromagneticenergy forming the image in a customizable way such that linearpre-processing of captured data (e.g., electronic data 135, FIG. 3)generates partially processed electronic data that is suited to anonlinear processing step. Customizable wavefront coding and linearpre-processing again reduces processing resources required by system 100to produce electronic data. In FIG. 5D, icon 550 represents a spatialintensity linescan of electromagnetic energy emanating from an object asa square wave. Icon 552 represents WFC optics that code a wavefront ofelectromagnetic energy in a customizable way. Icon 554 represents alinescan from electronic data formed from an optical image of the objectrepresented by icon 550. The electronic data represented by icon 554 issmooth and contains minimal additional structure. Icon 556 represents alinear processing step utilizing an aggressive filter that sharpensedges and adds overshoot and undershoot—that is, pixel values above andbelow local maxima and minima, respectively—to the edges. Processingrepresented by icon 556 may also sometimes be referred to as“pre-processing” or “prefiltering” herein. Icon 558 represents alinescan from electronic data formed by the linear processingrepresented by icon 556; it has steep sides and overshoot 558A andundershoot 558B at edges. Icon 560 represents nonlinear processing ofthe data represented in icon 558, to eliminate overshoot and undershootas further described below. Icon 562 represents a linescan fromelectronic data formed by the nonlinear processing, and showsrestoration of the vertical sides and sharp corners as seen in icon 530,without the overshoot and undershoot of icon 558.

FIG. 5E illustrates spatially varying processing and WFC optics. In FIG.5E, spatially varying processing generates processed electronic datathat emphasizes differing dominant spatial frequency content as itoccurs in differing regions of a captured image. In FIG. 5E, icon 570represents a spatial intensity linescan of electromagnetic energyemanating from an object as a square wave; one spatial region 570 a ofthe object has dominant content at a lower spatial frequency whileanother spatial region 570 b has dominant content at a higher spatialfrequency. Icon 572 represents WFC optics. Icon 574 represents alinescan from electronic data formed from an optical image of the objectrepresented by icon 570. The electronic data represented by icon 574 hasrounded corners which may be due to effects of the WFC optics. Icon 576represents a process that identifies spatial frequency content of animage and splits the image into data sets that are dependent on thecontent, as described further below. Icons 578 and 584 representlinescans from data sets of the electronic data, corresponding to theregions with lower and higher spatial frequency content respectively.Icons 580 and 586 represent linear processing steps (e.g., linearconvolutions of the electronic data represented by icons 578 and 584,with respective filter kernels). Icons 582 and 588 represent linescansfrom electronic data formed by the linear processing associated withicons 580 and 586. The electronic data for each of the data sets hasbeen sharpened with a filter tailored to its specific spatial frequencycontent. Icon 590 represents merging the data represented by icons 582and 588. Icon 592 represents a linescan from electronic data formed bythe merging operation; although the data does not have vertical edgesand perfectly sharp corners, additional (nonlinear) processing may takeplace either before or after the merging step represented by icon 590 tofurther improve the quality of the image.

FIG. 5F shows a plot 594 of linescans from a hypothetical imagingsystem. As in FIG. 5A-FIG. 5D, an object (not shown) that produces thelinescans shown in plot 594 is characterized by a step functionamplitude variation; that is, it has vertical sides. Linescan 595represents data from an imaging system utilizing no wavefront coding;linescan 596 represents data from an imaging system utilizing cosinefunction-based wavefront coding; and linescan 597 represents data froman imaging system utilizing cubic function-based wavefront coding.Linescan 595 shows “smoothing” of the object shape due to optics of thesystem without wavefront coding. Linescan 596 shows even more“smoothing” due to the cosine wavefront coding function. Linescan 597shows more structure, indicated as kinks and steps at locations 598,than either linescan 595 or linescan 596, due to the cubic wavefrontcoding function (only obvious instances of structure at locations 598are labeled in FIG. 5F, for clarity of illustration). Added structuremay make processing more complicated, and/or may lead to unintendedresults (e.g., structure may be “misunderstood” by a processor as partof an image, as opposed to an artifact introduced by optics). Therefore,processing of electronic data may benefit from modifications that removeor modify structure generated by imaging with optics that utilizewavefront coding.

Spatially Varying Processing I—Region Identification

Processing of a scene (e.g., scene 200) may segment raw or processedelectronic data associated with the scene in accordance with a definedset of pixels, with a boundary of an object that exists in the digitalimage of the scene, or with characteristics present in regions of adigital image of the scene. That is, spatially varying, orcontent-optimized, processing bases decisions about processing to beemployed on information present in electronic data of an optical imagebeing processed. The following discussion relates to ways in which theinformation in the electronic data is utilized to decide what processingwill be employed.

FIG. 6 shows an image 600 of an object that includes regions labeled A,B, C, D and E, respectively, each of which has a differentcharacteristic. Image 600 exists in the form of electronic data in asystem 100 (for example, after detector 130, FIG. 3, convertselectromagnetic energy from the object into the electronic data 135). Anidentification subset 610, shown as subset 610(a) and 610(b) asexplained below, can be utilized to evaluate image 600 and determineregions therein that have differing characteristics that might benefitfrom one particular form or degree of processing. Identification subset610 is a selected set of image pixels that “moves” over image 600 in thedirection of arrows 620. That is, identification subset 610 may firstselect the pixels contained in subset 610(a) and process these pixels toevaluate image content such as, but not limited to, power content byspatial frequency, presence of edges, presence of colors and so forth.Information related to the characteristics found in subset 610(a) may beassociated with the location of subset 610(a) within image 600, andoptionally stored for further use. Another location is then chosen as anew identification subset 610. As shown by arrows 620, each suchlocation may be processed to evaluate characteristics such as powercontent by spatial frequency, presence of edges, presence of colors andso forth. Relative locations at which identification subsets 600 arechosen may be selected according to a level of resolution desired foridentification of characteristics in image 600; for example,identification subsets 610 may overlap in each of the X and Y axes asshown in FIG. 6, or subsets 610 may abut each other, or subsets 610 maybe spaced apart from each other (e.g., such that the area of image 600is only sampled rather than fully analyzed).

Once a final identification subset 610, shown for example as subset610(b) in image 600, is processed, characteristics of the subsets 610thus sampled are utilized to identify regions of image 600 that havesimilar characteristics. Regions that have similar characteristics arethen segmented, that is defined as data sets for specific processingbased on the similar characteristics. For example, as discussed furtherbelow, if the processing of identification subsets 610 detects spatialfrequencies that are prominent within certain regions of an object,further processing may generate a filter that removes blurring from onlythose spatial frequencies. When image 600 is processed as describedabove, identification subsets that sample region A may detect power at ahorizontal spatial frequency related to the vertical lines visible insection A. Identification subsets that sample region B may also detectpower at the same spatial frequency, but depending on parameters of theidentifying algorithm may not select the spatial frequency forprocessing because power at the dominant spatial frequency is comparableto noise present in region B. Identification subsets that sample regionC may detect power at two horizontal and one vertical spatialfrequencies. Identification subsets that sample region D may detectpower associated with at least the same horizontal spatial frequency asidentified in region A, but may not detect the second horizontal spatialfrequency and the vertical spatial frequency due to the high noisecontent of region D. Identification subsets that sample region E maydetect power at the same horizontal spatial frequency as identified inregions A and C, but may not detect the secondary horizontal andvertical spatial frequencies and may even fail to detect the mainhorizontal spatial frequency due to the high noise content of region E.

This process of rastering a square identification subset through animage (along an X-Y grid to segment and identify data sets with commoncharacteristics) may be accomplished in different ways. For example, theidentification subset need not be square but may be of another shape,and may move through the image along any path that provides sampling ofthe image, rather than the raster scan described. The identificationsubset need not be a contiguous selection of electronic data; it may bea single element of the electronic data or one or more subsets thereof;it may be sparse, and may also be a mapping or indexing of independent,individual elements of the electronic data. Furthermore, sampling may beoptimized to find features of potential interest quickly, so as to spendfurther processing resources adding detail to the features of interest.For example, a sparse sample of an image may first be processed asinitial identification subsets, and further identification subsets maybe processed only in areas where the characteristics of the initialidentification subsets suggest image content of interest (e.g.,processing resources may thereby be concentrated on a lower part of alandscape image that has features, as opposed to an upper part of thesame image where initial identification subsets reveal only afeatureless blue).

Electronic data may be generated by a detector as an entire image (whichmay be called “a full frame” herein) or may be generated in blocks thatare less than the entire image. It may be buffered and temporarilystored. Processing of the electronic data may occur sequentially or inparallel with the reading, buffering and/or storing of the electronicdata. Thus, not all electronic data has to be read prior to processing;neither does all electronic data have to be “identified” into data setsprior to processing. It may be advantageous for Fourier and waveletprocessing techniques to read electronic data as a full frame, and thento process the entire image at one time. For processing techniques thatmay use subsets of the data, it may be advantageous to read in blocksthat are less than full frames, and subsequently process the data setsin parallel or in series.

FIGS. 7A, 7B and 7C further illustrate three approaches to segmentationof an image based upon defined sets of pixels. In FIG. 7A, a plane 700shows an irregular block 710 of three pixels that is at a fixed locationin plane 700. Block 710, for example, may be a result of segmentation ofa saturated region (see for example FIG. 8A and FIG. 8B). Alternatively,a user may define a fixed set of set of pixels like block 710 as aregion of interest for processing. For example, electronic data incorners of a rectangular or square shaped image may be processeddifferently than electronic data in a central region due to variation indesired performance or image quality in the corners compared to thecenter of the image. Electronic data in regions of a rectangular or anarbitrarily shaped image may be processed differently than electronicdata in other regions of the image due to predeterministic variations inthe optical image content, where the variation in image content isdictated or controlled by a predeterministic phase modification,illumination conditions, or uniform or nonuniform sampling structure orattributes of the sampling that vary across the image.

FIG. 7B shows a plane 720 with a 2×2 pixel block 730 that may be scannedin a raster-like fashion across the entire set of pixels included inplane 720 (e.g., pixel block 730 may be considered as an example ofidentification subset 610, FIG. 6). Scanning of pixel blocks may beutilized to identify segments that may benefit from specific processing;that is, the processing varies spatially according to image content, asfurther discussed below. In FIG. 7C, a plane 740 shows evenly spacedselected pixels 750, represented by hatched areas (for clarity, not allselected pixels are labeled). Non-contiguous pixels 750 may be selectedby sampling, for example utilizing 50% sampling as shown, or may beselected utilizing Fourier or wavelet decomposition. Such samplings mayfor example provide information at certain spatial frequencies for anentire image or for portions thereof. Segments may alternatively beformed from square N×N blocks of pixels or from irregular, sparse,contiguous or discontinuous blocks of pixels, or individual samples ofthe electronic data. For example, finding a minimum or maximum value inelectronic data of an image is an example of using 1×1 sized blocks orindividual samples as an identification subset.

Although shown as specific numbers of pixels, pixels or pixel blocks710, 730 and 750 may include a different number of pixels, from one tothe entire size of an image or an image set (e.g., up to a size of eachimage frame, multiplied by a number of frames in an image set). Segmentsdo not have to be square or rectangular convex polygons (e.g., pixelblock 730) but may be concave polygons (e.g., pixel block 710) or sparsesamplings. Furthermore, a segment containing more than a single pixelmay be further modified by weighting or further subsampling of thepixels within that segment, such as described below in connection withFIG. 9A-FIG. 9C.

Segmentation may be based upon boundaries of objects that exist in adigital image of a scene. For example, the Sobel, Prewitt, Roberts,Laplacian of Gaussian, zero cross, and Canny methods may be utilized toidentify edges of objects. Template matching, textures, contours,boundary snakes, and data flow models may also be used for segmentation.

Segmentation may also be performed on the basis of characteristics suchas intensity or color. FIG. 8A shows an object (sun 260 from scene 200,FIG. 2) superimposed onto a set of pixels 800. In this example, athresholding operation is applied to values of each of pixels 800 toform data sets. A three level thresholding operation is for example usedto form the data sets by dividing pixels 800 into data sets having threedifferent intensity levels. FIG. 8B shows pixels 800 segregated intodata sets according to thresholding of sun 260 as shown in FIG. 8A. Afirst data set, shown by densely hatched pixels 810, may include allpixels with values over 200 counts. A second data set, shown by lightlyhatched pixels 820, may include all pixels with values between 100 and200 counts. A third data set, shown by white pixels 830, may include allpixels with values less than 100 counts. Alternatively, by furtherapplying one of the edge detection algorithms listed above, or anotheredge detection algorithm, boundaries of sun 260 may be determined.

Segmentation and/or weighting may also be performed in accordance withcharacteristics of a detector, optics, a wavefront coding element,and/or an image. With regard to the image, segmentation may be basedupon boundaries of an imaged object, or the image's color, texture ornoise characteristics. With regard to the detector, segmentation may bebased upon a periodicity of FPN of the detector, or in relation toaliasing artifacts. With regard to a wavefront coding element andoptics, segmentation may be based upon stray light issues, ghosting,and/or a practical extent of a point spread function (“PSF”) of theimaging system. For example, when optics provide known stray light orghosting patterns, knowledge of such patterns may be utilized as a basisfor segmentation or weighting.

FIGS. 9A, 9B and 9C illustrate pixel blocks that are weighted orsegmented. In FIG. 9A, pixel block 900 includes an 8×8 array of pixels.A center 2×2 block of pixels 910 (represented as densely hatched pixels)is weighted with a value of 1.0, with all other pixels 920 (representedas lightly hatched pixels) weighted with a value of 0.5. Pixel block 900may correspond, for example, to block 730, FIG. 7B; this weighting issynonymous with selecting a window shape for segmenting a region. Otherwindow shapes that may be utilized include rectangular, Gaussian,Hamming, triangular, etc. Windows may not be restricted to closedcontours. A weighting of pixels such as shown in FIG. 9A may be usefulfor weighting pixels based upon proximity to a central pixel of a pixelblock. Alternatively, pixel weights may vary in a Gaussian-like formwith a normalized value of 1.0 at a central pixel or vertex anddecreasing to zero at a boundary of the pixel block. Such weighting mayreduce “blocking” artifacts wherein identification subsets define sharpboundaries that are processed accordingly. In FIG. 9B, pixel block 940is a 14×14 block of pixels 950 that includes 95% or more of anintegrated intensity of a PSF of an optical system, as represented bycontour lines 960. Since a PSF may not equal exactly zero at aparticular place, contour lines 960 indicate arbitrary levels ofmagnitude in the PSF, and segmentation or weighting of pixels 950 may bebased on such levels. In FIG. 9C, pixel block 970 shows segmentation ofpixels 980 (square areas bounded by lighter lines) into a plurality ofpolar or radial segments 990 (wedges bounded by heavier lines). Polarsegmentation may be useful when working with images that containradially organized features, such as images of irises. Segmentation mayalso be based upon the “directionality” of an image or set of images.Directionality may include “directions of motion” in time, space,contrast, color, etc. For example, in a series of related images,segmentation may be based upon motion of an object, in space and/ortime, as recorded in the series of images. Segmentation of an imagebased upon a direction of motion of color may include segmenting animage based upon the spatially vary hue in an image (e.g., an image ofthe sky may vary from a reddish color near the horizon to a bluish colornear the zenith, and the image may be segmented with respect to thisvariation).

Spatially Varying Processing—Processing Determination

An example of determining processing from regions of an input image,such as may be used in spatially varying processing, is now discussed.FIG. 10A shows two objects 1010 and 1020 that each include dark verticallines; object 1020 also includes light gray diagonal lines. FIG. 10Bshows an image “key” 1030 having five image sections A through E, withimage regions A and B falling within an upper part of key 1030 and imagesections C, D, E falling within a lower part of key 1030.

An optical system including WFC optics and a plurality of detectorsimages objects 1010 and 1020. The WFC optics introduce effects thatextend the depth of field of but may be processed out of electronic datato varying degrees to render a processed image; in particular, a degreeto which the effects are altered may be based on characteristics presentin the image(s) obtained therewith. In this example, the system includesa plurality of detectors that affect the captured images (although it isappreciated that effects similar to those described below could beproduced by varying, for example, lighting of objects 1010 and 1020). Adetector that images object 1010 introduces relatively low noise inimage section A shown in key 1030. Another detector introduces extremenoise in image section B. A detector that images object 1020 introduceslow noise in image section C, moderate noise in image section D, andextreme noise in image section E. Resulting detected electronic data,without processing, of objects 1010 and 1020 is illustrated as image600, FIG. 6.

Line plots demonstrating optical intensity and/or electronic dataintensity are useful in understanding the processing of image 600. FIG.11 illustrates how line plots (also sometimes called “linescans” herein)may be utilized to represent optical intensity and/or electronic datamagnitude as a function of spatial location. Heavy bars at a firstspatial frequency “SF1,” as shown in image 1110, produce wide peaks andvalleys in a corresponding line plot 1120 of optical intensity along thedashed line in image 1110. Narrower bars at a second spatial frequency“SF2,” as shown in image 1130, produce correspondingly narrow peaks andvalleys in a corresponding line plot 1120. Random noise “N,” as shown inimage 1150, produces an erratic line plot 1140. It is appreciated thatwhen a line plot is utilized in connection with an optical image, thevertical axis corresponds with intensity of electromagnetic energy thatis present at a specific spatial location. Similarly, when a line plotis utilized in connection with electronic data, the vertical axiscorresponds with a digital value of intensity or color informationpresent within the electronic data, such as for example generated by adetector.

Electronic data of objects may be expressed mathematically as anappropriate sum of spatial frequency information and noise, for examplespatial frequencies SF1, SF2 and noise N as shown in FIG. 11. Detectedelectronic data may also be expressed as a convolution of object datawith a point spread function (“PSF”) of WFC optics, and summed with theN data weighted according to whether a section is imaged with a detectorthat adds low noise, moderate noise or extreme noise. Alternatively, anamplitude of the signals may be decreased (e.g., due to decreasedillumination) while detector noise remains constant. Processedelectronic data may be expressed as a convolution of the detectedelectronic data with a filter that reverses effects such as the PSF ofthe WFC optics, and/or sharpens spatial frequencies that characterizethe detected electronic data, as described further below. Therefore,given the above description of electronic data present in sections Athrough E of image 600, formulas describing the object, detectedelectronic data, and processed electronic data are be summarized as inTable 1 below. TABLE 1 Mathematical expressions for signal frequencyinformation and noise of an example Image Object region electronic dataDetected electronic data Processed electronic data A 1*SF1 + 0*SF2((1*SF1 + 0*SF2)**PSF) + 0.5*N (((1*SF1 + 0*SF2)**PSF) + 0.5*N)**Filter(a) B 1*SF1 + 0*SF2 ((1*SF1 + 0*SF2)**PSF) + 10*N (((1*SF1 +0*SF2)**PSF) + 10*N) **Filter(b) C 1*SF1 + 1*SF2 ((1*SF1 +1*SF2)**PSF) + 0.5*N (((1*SF1 + 1*SF2)**PSF) + 0.5*N) **Filter(c) D1*SF1 + 1*SF2 ((1*SF1 + 1*SF2)**PSF) + 1*N (((1*SF1 + 1*SF2)**PSF) +1*N) **Filter(d) E 1*SF1 + 1*SF2 ((1*SF1 + 1*SF2)**PSF) + 10*N(((1*SF1 + 1*SF2)**PSF) + 10*N) **Filter(e)where*denotes multiplication and**denotes convolution.

Nonlinear and/or spatially varying processing may render a processedimage resembling an original image up to a point where noise overwhelmsthe signal, such that processing does not separate the signal from thenoise. In the above example, signal processing detects spatialfrequencies that are prominent within the object, for example byutilizing identification subsets as described in connection with FIG. 6.Next, the processing generates a filter that processes the data for onlythe spatial frequencies identified in each data set. Processing of eachdata set proceeds through the data sets, one at a time. After one dataset is processed, the next subset in turn may be processed.Alternatively, processing may occur in a raster fashion or in anothersuitable sequence, as also described in connection with FIG. 6.

FIG. 12A illustrates a process that is appropriate for processingelectronic data that falls within region A of FIG. 6. Object 1010, FIG.10A, which forms data represented in box 1210, is imaged from region A.A detector imaging region A adds noise, producing the electronic datarepresented in box 1220. For each identification subset processed withinregion A, a power spectrum estimate is formed by performing a Fouriertransform of the detected electronic data. Box 1230 illustrates peaksfound in the Fourier transformed data from region A, with horizontalspatial frequencies increasing along a horizontal axis and verticalspatial frequencies increasing along a vertical axis (horizontal andvertical referring to corresponding directions in FIG. 12 when held sothat text thereof reads normally). Three dots forming a horizontal lineare visible in this box. The central dot corresponds to a DC component,that is, power at zero horizontal and vertical spatial frequency; thiscomponent is always present and may be ignored in further processing.The dots to the left and right of the central dot correspond to positiveand negative spatial frequency values pursuant to the spacing ofvertical lines in the object; that is, the left and right dotscorrespond to spatial frequencies ±SF1. Next, dominant spatialfrequencies are determined by analyzing the power spectrum estimate andestablishing a threshold such that only the dominant spatial frequenciesexceed the threshold. As seen in box 1240, power spectrum informationbelow the threshold is discarded so that only peaks at the dominantspatial frequencies remain. Next, the process builds an appropriatefilter 1260 that sharpens the dominant spatial frequencies (filter 1260is shown in frequency space, though it may be visualized in spatialterms, as in box 1250). Therefore, filter 1260 processes the electronicdata for the dominant spatial frequencies. Filter 1260 has identifiablefeatures that correspond to the dominant spatial frequencies in thepower spectrum estimate. Finally, filter 1260 is applied to the detectedimage, resulting in a processed image represented by a linescan in box1270. Filter 1260 may be applied directly in the frequency domain or,alternatively, box 1250 may be applied in the spatial domain. It may beappreciated that after processing the data in box 1260 closely resemblesthe data in box 1210.

FIG. 13 illustrates a process that is appropriate for processingelectronic data that falls within region C of FIG. 6. Steps used in theprocessing for region C are the same as for region A described above,but the different spatial frequency information of the object beingimaged creates a different result. Object 1020, FIG. 10A, which formsdata represented in box 1310, is imaged from region C. A detectorimaging region C introduces the same amount of noise as the detectorimaging region A, and forms data as represented in box 1320. However,the presence of diagonal lines in object 1020 results in region C havingsignificant power in both vertical and horizontal spatial frequencies.Therefore, compared to the result obtained for image region A, the sameprocess for region C forms additional peaks in a power spectrum estimateshown in box 1330. These peaks may be preserved when a threshold isestablished, as shown in box 1340. Specifically, peaks 1344 correspondto spatial frequencies that have values of ±SF1 in the horizontaldirection and zero in the vertical direction, and peaks 1342 correspondto spatial frequencies that have values of ±SF2 in each of thehorizontal and vertical directions. Consequently, a filter 1360 formedfrom such information exhibits features 1365 at the correspondingspatial frequencies. Filter 1360 is also shown in spatial terms in box1350. A linescan representation 1370 of processed electronic data formedfor region C shows that the processed electronic data correspondsclosely to the original object data; that is, much of the noise added inthe detection step has been successfully removed.

FIG. 14 illustrates a process that is appropriate for processingelectronic data that falls within region D of FIG. 6. Steps used in theprocessing for region D are similar as for regions A and C describedabove, but the higher noise introduced by the detector, as compared withthe signal corresponding to the object being imaged, creates a differentresult. Object 1020 of FIG. 10A, which forms data represented in box1410, is imaged from region D. A detector imaging region D has the samespatial frequency content as region C, but has higher noise content thanthe detector imaging regions A and C, and forms data as represented inbox 1420. In fact, region D contains so much noise that, although peakscorresponding to the diagonal lines form in the power spectrum estimate,these peaks are comparable to noise in this image region. Box 1430 showsrandom noise peaks in the power spectrum estimate. The higher noisenecessitates raising a threshold to a higher value, leaving peaks 1444at spatial frequencies ±SF1, but not leaving peaks corresponding to thediagonal lines. Therefore, a filter 1460 formed for region D resemblesfilter 1260 formed for region A, because it is based only on the spatialfrequencies corresponding to the vertical lines—the only spatialfrequencies dominant enough to stand out over the noise. Filter 1460 isalso shown in spatial terms in box 1450. A linescan representation 1470of processed electronic data for region D shows the vertical lines;amplitude of the vertical lines is diminished as compared to theprocessed electronic data shown in FIG. 12 for image region A, and thediagonal lines are not discernable.

FIG. 15 illustrates a process that is appropriate for processingelectronic data that falls within regions B and E of FIG. 6. Object 1020of FIG. 10A, which forms data represented in box 1510, is imaged fromregions B and E. A detector imaging regions B and E introduces even morenoise than the detector imaging region D, and forms data as representedin box 1520. In regions B and E, the detector-induced noise overwhelmsthe ability of the processing to identify any spatial frequencies. Apower spectrum estimate 1530 includes only a DC point and many peakscaused by the noise; thresholding does not locate any peak, as shown inbox 1540, and a corresponding filter 1560 has a constant value. In suchcases, output data may be replaced by a constant value, as shown in box1570, or the original, detected but unfiltered electronic data (as inbox 1520) may be substituted.

Nonlinear and/or spatially varying processing may also optimize aprocessed image that has image regions of high and low contrast. Thatis, certain image regions of an object may present large intensityvariations (e.g., high contrast) with sharp demarcations of intensity,while other image regions present low intensity variations (lowcontrast) but also have sharp demarcations of intensity. The intensityvariations and sharp demarcations may pertain to overall lightness anddarkness, or to individual color channels. Human perception of imagesincludes sensitivity to a wide range of visual clues. Resolution andcontrast are two important visual clues; high resolution involves sharpor abrupt transitions of intensity or color (but which may not be largechanges), while high contrast involves large changes in intensity orcolor. Such changes may occur within an object or between an object anda background. Not only human perception, but also applications such asmachine vision and task based processing, may benefit from processing toprovide high resolution and/or high contrast images.

WFC optics may blur edges or reduce contrast as they extend depth offield. Captured data obtained through WFC optics may be processed with afilter that exhibits high gain at high spatial frequencies to maketransitions among intensity levels (or colors) sharper or steeper (e.g.,increasing contrast); however, such filtering may also amplify imagenoise. Amplifying noise to the point where variations in intensity (orcolor) are approximately the same magnitude as transitions in a scenebeing imaged “masks” the transitions; that is, the increased noise makesthe actual transitions indistinguishable from the noise. The humanvisual system may also respond to noise-free areas with the perceptionof false coloring and identify the image quality as poor, so reducingthe noise to zero does not always produce images with good quality.Therefore, when WFC optics are used, it may be desirable to processcertain image regions differently from each other, so as to maintain notonly the sharp demarcations of intensity or color, but also theintensity or color variations of each region and desired noisecharacteristics, as illustrated in the following example of determiningprocessing based on image content.

FIG. 16-24 illustrate how adapting a filter to contrast of an imageregion may improve a resulting image. As will be described in moredetail, FIG. 16 through FIG. 19 show an example of a high contrast imageregion imaged to a detector and processed with an “aggressive” filterthat increases noise gain. This processing is shown to sharpen edgetransitions of the high contrast image without “masking” the transitionswith amplified noise. In FIG. 20 through FIG. 24, a low contrast imageregion is imaged at a detector. The resulting electronic data is firstprocessed with the same filter as in the example of FIG. 16-FIG. 19 toshow how amplified noise masks transitions. Then, the electronic data isprocessed with a less “aggressive” filter that sharpens the edgetransitions somewhat, but does not amplify noise is as much as by the“aggressive” filter, so that amplified noise does not mask thetransitions.

FIG. 16 shows a linescan 1600 of object information of a high contrastimage region of a scene such as, for example, fence 250 of scene 200,FIG. 2. Object information 1610, 1620, 1630 and 1640 of fourcorresponding objects is shown in linescan 1600; each of objectsrepresented by object information 1610-1640 is successively smaller andmore detailed (i.e., higher resolution imaging is required to show thespatial detail that is present). A gray scale used, corresponding tovalues along the vertical axis of linescan 1600, ranges from zero to 240levels. Intensity of object information 1610-1640 varies from zero to 50to 200 gray levels, with abrupt transitions as a function of pixellocation (i.e., the objects represented by object information 1610-1640have sharp demarcations of intensity from one point to another).Although the terms “gray scale” and “gray levels” are used in thisexample, variations in intensity in one or more color channels may besimilarly processed and are within the scope of the present disclosure.

Optics, including WFC optics, generate a modified optical image withextended depth of field. FIG. 17 shows a linescan 1700 of the objectsrepresented in linescan 1600 as optical information 1710, 1720, 1730 and1740. The WFC optics utilized to produce optical information 1710, 1720,1730 and 1740 implement a pupil plane phase function phase(r,θ) suchthat $\begin{matrix}{{{{phase}\left( {r,\theta} \right)} = {g{\sum\limits_{i = 1}^{n}\quad{a_{i}z^{i}\quad{\cos\left( {w\quad\theta} \right)}}}}}{{{{where}\quad n} = 7},{0 \leq r \leq 1},{a_{1} = 5.4167},{a_{2} = 0.3203},{a_{3} = 3.0470},{a_{4} = 4.0983},{a_{5} = 3.4105},{a_{6} = 2.0060},{a_{7} = {- 1.8414}},{w = 3},{0 \leq \theta \leq {2\quad\pi\quad{radians}}},{{{and}\quad z} = \left\lbrack \begin{matrix}{{{\frac{z - r}{1 - r}\quad{when}\quad r} \geq 0.5},} \\{{0\quad{when}\quad r} < {0.5.}}\end{matrix} \right.}}} & {{Eq}.\quad 1}\end{matrix}$Optics that follow the form of Eq. 1 fall into a category that issometimes referred to herein as “cosine optics,” which generally denotesan optical element that imparts a phase variation that variescosinusoidally with respect to an angle θ and aspherically in radius r.

Wavefront coding may degrade sharp demarcations of intensity betweenadjacent points, as may be seen in the rounded transitions and slopingedges of optical information 1710, 1720, 1730 and 1740.

An optical image captured by an electronic image detector that generateselectronic data may introduce noise. For example, a detector mayintroduce noise that has two components: signal dependent noise, andsignal independent, additive noise. Signal dependent noise is a functionof signal intensity at a given pixel location. Signal independent noiseis additive in nature and does not depend on intensity at a pixellocation. Shot noise is an example of signal dependent noise. Electronicread noise is an example of signal independent noise.

FIG. 18 shows a linescan 1800 of the objects represented in linescan1600 as electronic data 1810, 1820, 1830 and 1840. Note that electronicdata 1810, 1820, 1830 and 1840 includes rounded transitions and slopededges as seen in optical information 1710, 1720, 1730 and 1740, and thatareas of high intensity include noise that is roughly proportional tothe intensity.

Electronic data 1810, 1820, 1830 and 1840 may be processed with a filterthat enhances high spatial frequencies with respect to lower spatialfrequencies, thus generating sharp transitions. An example of such afilter is a parametric Wiener filter as described in the frequencydomain for spatial frequency variables u and v by the followingequations: $\begin{matrix}{{W\left( {u,v} \right)} = \frac{H^{*}\left( {u,v} \right)}{\left| {H\left( {u,v} \right)} \middle| {}_{2}{{+ \gamma}\frac{S_{N}\left( {u,v} \right)}{S_{O}\left( {u,v} \right)}} \right.}} & {{Eq}.\quad 2}\end{matrix}$where W(u,v) is the parametric Wiener filter, H(u,v) is an opticaltransfer function, H*(u,v) is the conjugate of the optical transferfunction, S_(N)(u,v) is a noise spectrum, S_(O)(u,v) is an objectspectrum and y is a weighting parameter. Noise spectrum S_(N)(u,v) isgiven by S_(N)(u,v)=(1/Nw) where Nw is a constant. Object spectrumS_(O)(u,v) is typically given by${{S_{o}\left( {u,v} \right)} = \frac{1}{\left\lbrack {1 + \left( {2\pi\quad\mu\quad\rho} \right)^{2}} \right\rbrack^{3/2}}},$where ρ=√{square root over ((u²+v²))}, and μ is a scalar constant.

An inverse Fourier transform of W(u,v) gives a spatial domain version ofthe Wiener filter. One example of processing (also sometimes called“reconstruction” herein) of images is performed by convolving the image(e.g., as represented by linescan 1800 of electronic data 1810, 1820,1830 and 1840 shown above) with a spatial domain version of the Wienerfilter. Such reconstruction generates sharp edges, but also increasesnoise power.

FIG. 19 shows a linescan 1900 of the objects represented in linescan1600 as processed electronic data 1910, 1920, 1930 and 1940, that is,electronic data 1810, 1820, 1830 and 1840 after processing with W(u,v)defined above. As seen in the reconstructed electronic data, signal andnoise power are increased by about a factor of 3. However, for humanperception of resolution, and certain other applications (such asmachine vision, or task based processing) where sharp demarcations(e.g., steep slopes) between adjacent areas that differ in intensity aredesirable, increased noise may be tolerable. For instance, linescan 1900is processed with the parametric Wiener filter discussed above, withN_(W)=250, μ=0.25, and γ=1. Linescan 1900 is seen to have steeper slopesbetween areas of differing intensity than linescan 1700, and noise athigh and low intensity levels is amplified, but does not masktransitions among the areas of differing intensity. For example, noisydata at the high and low intensity levels remains much higher and lower,respectively, than the 120th gray level labeled as threshold 1950. Thus,W(u,v) with the constants noted above may improve human perception ofthe bright-dark-bright transitions in the high contrast image region.

In addition to the processing steps discussed above, for certain highcontrast imaging applications such as, for example, imaging of businesscards, barcodes or other essentially binary object information,filtering steps may be followed by a thresholding step, therebyresulting in a binary valued image.

Certain image regions of an object being imaged may have reducedintensity variations but, like the image region discussed in connectionwith FIG. 16-FIG. 19, may also have sharp demarcations of intensity.FIG. 20 shows a linescan 2000 of a low contrast image region of ascene—which may be, for example, a second portion of the same sceneillustrated in FIG. 16-FIG. 19. FIG. 20-FIG. 24 use the same gray scaleof 240 gray levels as in FIG. 16-FIG. 19. Electronic data 2010, 2020,2030 and 2040 of four corresponding objects are shown in linescan 2000;each object represented by electronic data 2010-2040 is successivelysmaller and more detailed. However, maximum differences of intensity inelectronic data 2010, 2020, 2030 and 2040 are only between zero and 30gray levels, as opposed to the differences of zero to 200 gray levels inelectronic data 1610, 1620, 1630 and 1640, FIG. 16. The same WFC opticsas discussed in connection with FIG. 17 modifies the image regionillustrated above to generate an optical image with extended depth offield, which is captured by a detector that adds noise, as illustratedin FIG. 21 and FIG. 22.

FIG. 21 shows a linescan 1700 of the objects represented in linescan2000 as optical information 2110, 2120, 2130 and 2140 that have roundedtransitions and sloping edges, similar to what was seen in opticalinformation 1710, 1720, 1730 and 1740, FIG. 17. FIG. 22 shows a linescan2200 of the objects represented in linescan 2000 as electronic data2210, 2220, 2230 and 2240. Note that electronic data 2210, 2220, 2230and 2240 includes rounded transitions and sloped edges as seen inoptical information 2110, 2120, 2130 and 2140, and that areas of higherintensity include noise that is roughly proportional to the intensity,although the intensity is lower than the peak intensities seen in FIG.16-FIG. 19.

FIG. 23 shows a linescan 2300 of the objects represented in linescan2000 as processed electronic data 2310, 2320, 2330 and 2340, that is,electronic data 2210, 2220, 2230 and 2240 after convolution with an“aggressive” parametric Wiener filter as described in Eq. 1 and Eq. 2above, again with N_(W)=250, μ=0.25, and γ=1. In FIG. 23, it is evidentthat noise has been amplified to the point that the noise “masks”transitions; that is, no gray level threshold can be chosen for whichonly the “bright” or “dark” regions of the original objects representedin linescan 2000 are brighter or darker than the threshold.

Utilizing a “less aggressive” filter may mitigate the “masking” that mayresult from noise amplification. FIG. 24 shows a linescan 2400 of theobjects represented in linescan 2000 as processed electronic data 2410,2420, 2430 and 2440, that is, again starting with electronic data 2210,2220, 2230 and 2240, FIG. 22, but this time utilizing a Wiener filter asdescribed in Eq. 1 and Eq. 2 with “less aggressive” constants Nw=500,μ=1, and γ=1. The “less aggressive” filter constants restore edgesharpness to processed electronic data 2410, 2420, 2430 and 2440, butonly increase noise by a factor near unity, thereby not “masking”transitions between the closely spaced high and low intensity levels ofthe objects represented in linescan 2000. Note that noisy data at thehigh and low intensity levels remains higher and lower, respectively,than the 20th gray level labeled as threshold 2450.

It has thus been shown how processing may be determined for differentdata sets of electronic data representing an image. Other forms ofprocessing may be utilized for data sets that are identified indifferent ways from those discussed above. For example, as compared tothe examples illustrated by FIG. 16 through FIG. 24, filtering methodsother than Wiener filters may be utilized to modify a degree to whicheffects introduced by WFC optics are altered. Also, when data sets areidentified on the basis of color information instead of intensityinformation, filters that modify color may be utilized instead of afilter that enhances intensity differences.

Spatially Varying Processing—Implementation

FIG. 25 illustrates an optical imaging system utilizing nonlinear and/orspatially varying processing. System 2500 includes optics 2501 and awavefront coding (WFC) element 2510 that cooperate with a detector 2520to form a data stream 2525. Data stream 2525 may include full frameelectronic data or any subset thereof, as discussed above. WFC element2510 operates to code the wavefront of electromagnetic energy imaged bysystem 2500 such that an image formed at detector 2520 has extendeddepth of field, and includes effects due to the WFC optics that may bemodified by post processing to form a processed image. In particular,data stream 2525 from detector 2520 is processed by a series ofprocessing blocks 2522, 2524, 2530, 2540, 2552, 2554 and 2560 to producea processed image 2570. Processing blocks 2522, 2524, 2530, 2540, 2552,2554 and 2560 represent image processing functionality that may be, forexample, implemented by electronic logic devices that perform thefunctions described herein. Such blocks may be implemented by, forexample, one or more digital signal processors executing softwareinstructions; alternatively, such blocks may include discrete logiccircuits, application specific integrated circuits (“ASICs”), gatearrays, field programmable gate arrays (“FPGAs”), computer memory, andportions or combinations thereof. For example, processing blocks 2522,2524, 2530, 2540, 2552, 2554 and 2560 may be implemented by processor140 executing software 145 (see FIG. 3), with processor 140 optionallycoordinating certain aspects of processing by ASICs or FPGAs.

Processing blocks 2522 and 2524 operate to preprocess data stream 2525for noise reduction. In particular, a fixed pattern noise (“FPN”) block2522 corrects for fixed pattern noise (e.g., pixel gain and bias, andnonlinearity in response) of detector 2520; a prefilter 2524 utilizes apriori knowledge of WFC element 2510 to further reduce noise from datastream 2525, or to prepare data stream 2525 for subsequent processingblocks. Prefilter 2524 is for example represented by icons 518, 536 or556 as shown in FIGS. 5B, 5C and 5D respectively. A color conversionblock 2530 converts color components (from data stream 2525) to a newcolorspace. Such conversion of color components may be, for example,individual red (R), green (G) and blue (B) channels of a red-green-blue(“RGB”) colorspace to corresponding channels of a luminance-chrominance(“YUV”) colorspace; optionally, other colorspaces such ascyan-magenta-yellow (“CMY”) may also be utilized. A blur and filteringblock 2540 removes blur from the new colorspace images by filtering oneor more of the new colorspace channels. Blocks 2552 and 2554 operate topost-process data from block 2540, for example to again reduce noise. Inparticular, single channel (“SC”) block 2552 filters noise within eachsingle channel of electronic data using knowledge of digital filteringwithin block 2540; multiple channel (“MC”) block 2554 filters noise frommultiple channels of data using knowledge of optics 2501 and the digitalfiltering within blur and filtering block 2540. Prior to processedelectronic data 2570, another color conversion block 2560 may forexample convert the colorspace image components back to RGB colorcomponents.

FIG. 26 schematically illustrates an imaging system 2600 with nonlinearand/or spatially varying color processing. Imaging system 2600 producesa processed three-color image 2660 from captured electronic data 2625formed at a detector 2605, which includes a color filter array 2602.System 2600 employs optics 2601 (including one or more WFC elements orsurfaces) to code the wavefront of electromagnetic energy through optics2601 to produce captured electronic data 2625 at detector 2605; an imagerepresented by captured electronic data 2625 is purposely blurred byphase alteration effected by optics 2601. Detector 2605 generatescaptured electronic data 2625 that is processed by noise reductionprocessing (“NRP”) and colorspace conversion block 2620. NRP functions,for example, to remove detector nonlinearity and additive noise, whilethe colorspace conversion functions to remove spatial correlationbetween composite images to reduce the amount of logic and/or memoryresources required for blur removal processing (which will be laterperformed in blocks 2642 and 2644). Output from NRP & colorspaceconversion block 2620 is in the form of a data stream that is split intotwo channels: 1) a spatial channel 2632; and 2) one or more colorchannels 2634. Channels 2632 and 2634 are sometimes called “data sets”of a data stream herein. Spatial channel 2632 has more spatial detailthan color channels 2634. Accordingly, spatial channel 2632 may requirethe majority of blur removal within a blur removal block 2642. Colorchannels 2634 may require substantially less blur removal processingwithin blur removal block 2644. After processing by blur removal blocks2642 and 2644, channels 2632 and 2634 are again combined for processingwithin NRP & colorspace conversion block 2650. NRP & colorspaceconversion block 2650 further removes image noise accentuated by blurremoval, and transforms the combined image back into RGB format to formprocessed three-color image 2660. As above, processing blocks 2620,2632, 2634, 2642, 2644 and 2650 may include one or more digital signalprocessors executing software instructions, and/or discrete logiccircuits, ASICs, gate arrays, FPGAs, computer memory, and portions orcombinations thereof.

FIG. 27 shows another imaging system 2700 utilizing nonlinear and/orspatially varying processing. While the systems illustrated in FIGS. 25and 26 provide advantages over known art, system 2700 may generate evenhigher quality images and/or may perform more efficiently in terms ofcomputing resources (such as hardware or computing time) as compared tosystems 2500 and 2600. System 2700 employs optics 2701 (including one ormore WFC elements or surfaces) to code the wavefront of electromagneticenergy through optics 2701 to produce captured electronic data 2725 atdetector 2705; an image represented by captured electronic data 2725 ispurposely blurred by phase alteration effected by optics 2701. Detector2705 generates captured electronic data 2725 that is processed by noisereduction processing (“NRP”) and colorspace conversion block 2720. Aspatial parameter estimator block 2730 examines information of thespatial image generated by NRP and colorspace conversion block 2720, toidentify which image regions of the spatial image require what kindand/or degree of blur removal. Spatial parameter estimator block 2730may also divide captured data 2725 into data sets (for example, aspatial channel 2732 and one or more color channels 2734, as shown inFIG. 27, and/or specific data sets (e.g., data sets corresponding toimage regions, as shown in FIG. 6-FIG. 9C) to enable association ofspecific blur removal processing parameters with each data set ofcaptured electronic data 2725. Information generated by spatialparameter estimator block 2730 provides processing parameters 2736 forrespective image regions (e.g., data sets of electronic data 2725) to ablur removal block 2742 that handles spatial channel 2732. A separatecolor parameter estimator block 2731 examines information of the colorchannel(s) 2734 output by NRP and colorspace conversion block 2720 toidentify which data sets (e.g., corresponding to image regions) of colorchannel(s) 2734 require what kind of blur removal. Data sets such ascolor channels 2734 of captured electronic data 2725, as well as spatialchannels 2732, may be processed in spatially varying ways to filterinformation therein. Processing performed on certain color channels 2734may vary from processing performed on a spatial channel 2732 or othercolor channels 2734 of the same captured electronic data 2725.Information generated by color parameter estimator block 2731 providesprocessing parameters 2738 for respective data sets of capturedelectronic data 2725 to blur removal block 2744 that handles the colorimages. Processing parameters may be derived for captured datacorresponding to an entire image, or for a data set (e.g., correspondingto a spatial region) of captured electronic data 2725, or on a pixel bypixel basis. After processing by blur removal blocks 2742 and 2744,channels 2732 and 2734 are again combined for processing within NRP &colorspace conversion block 2750. NRP & colorspace conversion block 2750further removes image noise accentuated by blur removal, and transformsthe combined image back into RGB format to form processed three-colorimage 2760. As above, processing blocks 2720, 2732, 2734, 2742, 2744 and2750 may include one or more digital signal processors executingsoftware instructions, and/or discrete logic circuits, ASICs, gatearrays, FPGAs, computer memory, and portions or combinations thereof.

Table 2 shows non-limiting types of processing that may be applied by ablur removal block (e.g., any of blur removal and/or blur and filteringblocks 2540, FIG. 25; 2642, 2644, FIG. 26, or 2742, 2744, FIG. 27) todifferent data sets (e.g., corresponding to spatial regions) within ascene such as scene 200, FIG. 2. Table 2 summarizes blur removalprocessing results for a given spatial region in scene 200, andcorresponding processing parameters. TABLE 2 Exemplary blur removalapplications and corresponding processing parameters. Spatial RegionProcessing Parameters Exemplary Results Sky Object has very little Nosignal processing to remove 210 spatial detail blur is performed CloudsObject has small amount Signal processing is adjusted so 220 of spatialdetail that blur is removed at low spatial frequencies Grass Object hashigh spatial Signal processing is adjusted to 230 detail but lowcontrast remove blur at all spatial frequencies but without excessivesharpening, since amplified noise may overwhelm signal Shadow Object hasvery low No signal processing to remove blur 240 intensity is performedFence Object has moderate Signal processing is adjusted so 250 spatialdetail and high that blur is removed from low and contrast mid spatialfrequencies Sun Intensity saturates sensor No signal processing toremove blur 260 is performed Basket Object has high spatial Signalprocessing is adjusted to 270 detail and high contrast remove blur fromhigh and low spatial frequencies Balloon Object has moderate Signalprocessing is adjusted so 280 spatial detail in the form that blur isremoved from low and of color variations mid spatial frequencies inappropriate color channels

A blur removal block (e.g., any of blur removal and/or blur andfiltering blocks 2540, FIG. 25; 2642, 2644, FIG. 26, or 2742, 2744, FIG.27) may also generate and sum weighted versions of separate processesthat work with different spatial frequencies, such as those summarizedin FIG. 28.

FIG. 28 illustrates how a blur removal block 2800 may process electronicdata according to weighting factors of various spatial filterfrequencies. Input electronic data (e.g., captured data) is supplied asdata 2810. Spatial frequency content analysis of the input electronicdata (e.g., by either of spatial parameter estimator block 2730 or colorparameter estimator block 2731, FIG. 27) determines processingparameters 2820. Filters 2830, 2835, 2840 and 2845 are no-, low-, mid-and high-spatial frequency filters that form output that is weighted byweights 2850, 2855, 2860 and 2865 respectively before being summed at anadder 2870 to form processed data 2880. For example, filters 2830 and2835, for no- or low-spatial frequency filtering, have high weights 2850and 2855 respectively for processing homogeneous image regions (e.g., inblue sky region 210, FIG. 2, where there is little or no image detail)and low weights 2850 and 2855 for processing regions with high spatialfrequencies (e.g., in grass 230, fence 250 or basket 270 regions inscene 200, FIG. 2, that contain fine detail).

Blur removal block 2800 thus (a) utilizes processing parameters 2820 toselect weights 2850, 2855, 2860 and 2865, (b) generates weightedversions of filters 2830, 2835, 2840 and 2845, and (c) sums the weightedversions, as shown, before passing the processed electronic data 2880 asoutput or for further image processing. Instead of three spatialfrequency filters corresponding to “low,” “mid” and “high” spatialfrequencies, a spatial frequency spectrum may be divided into only twoor more than three spatial frequency ranges. The illustrated sequence ofoperations may be reversed; that is, each channel may perform frequencyfiltering after a weight is applied.

Blur removal may also be performed on a plurality of channels, such aschannels corresponding to different color components of a digital image.FIG. 29 shows a generalization of weighted blur removal for N processesacross M multiple channels. Channels 1 through M may be, for example,each color in a 3-channel RGB image, where M=3 (ellipsis indicatingwhere an appropriate number of blur removal blocks may be utilized tosupport any number M of channels). Blur removal blocks 2900 and 2902 arerepresentative blur removal blocks for an M-channel system. H₁ throughH_(N) represent, for example, spatial frequency dependent filters (e.g.,spatial frequency filters 2830, 2835, 2840 and 2845 of FIG. 28,replicated for each of blur removal blocks 2900 and 2902 and indicatedby ellipsis as replicated for any number N of spatial frequencyfilters). Weights Weight₁ through Weight_(N) for each of blur removalblocks 2800, 2802 are adjusted according to processing parameters 2920,2922 respectively. Output of each of blur removal blocks 2900, 2902 areprocessed data 2980 and 2982 respectively.

Nonlinear Processing—Techniques

FIG. 30A through FIG. 30D illustrate operation of a system in which aprefilter performs a certain portion of blur removal while a nonlinearprocess removes remaining blur to form a further processed image. FIG.30A shows an object to be imaged, and FIG. 30B represents anintermediate image formed utilizing cosine optics that implementwavefront coding with a phase (r, θ) as defined by Eq. 1 above where,again, n=7, 0≦r≦1, a₁=5.4167, a₂=0.3203, a₃=3.0470, a₄=4.0983,a₅=3.4105, a₆=2.0060, a₇=−1.8414, w=3, 0≦θ≦2π radians and$z = \left\lbrack \begin{matrix}{{{\frac{z - r}{1 - r}\quad{when}\quad r} \geq 0.5},} \\{{0\quad{when}\quad r} < {0.5.}}\end{matrix} \right.$

FIG. 30C represents electronic data from FIG. 30B after prefiltering byperforming a linear convolution of the electronic data with a prefilterkernel that has unity sum and an RMS value of 0.8729. The unity sum ofthe prefilter kernel may mean that the average intensity of theprefiltered image (FIG. 30C) is equal to the average intensity of theintermediate image (FIG. 30B); but in this context, “unity sum” means atleast that the sum of point-by-point intensities after prefiltering mayequal a scalar as opposed to one—since prefiltering may be implementedby hardware that executes integer multiplication and addition instead offloating point arithmetic. An RMS value below 1.0 means that noise inthe prefiltered image is reduced relative to noise in the intermediateimage.

The prefilter kernel may be derived by dividing a complexautocorrelation of e^(−j2π(phase(r,θ))) into a Gaussian shaped targetq(r, θ) that is defined by $\begin{matrix}{{{q\left( {x,y} \right)} = {\mathbb{e}}^{{bx}^{2} - {by}^{2}}},{{{AND}\quad{q\left( {r,\theta} \right)}} = {{q\left( {x,y} \right)}❘_{x = {r\quad\cos\quad\underset{y = {r\quad\sin\quad\theta}}{\theta}}}}}} & {{Eq}.\quad 3}\end{matrix}$where −1≦x≦−1≦y≦1, radius 0≦r≦1, 0≦θ≦2π radians, b=2.5. Target shapesother than a Gaussian are also usable. After dividing, the divisionresult is inverse Fourier transformed and the real part is taken toobtain the prefilter kernel. As may be seen in the above figure, FIG.30C continues to be blurred after the prefiltering operation.

FIG. 30D is obtained from FIG. 30C by implementing a shock-filterroutine such as that described in “Diffusion PDEs on Vector-ValuedImages,” IEEE Signal Processing Magazine, pp. 16-25, vol. 19, no. 5,September 2002. FIG. 30D may be seen to closely resemble the originalobject shown as FIG. 30A.

FIG. 31A through FIG. 31D illustrate operation of a system similar tothat illustrated in FIG. 30A-FIG. 30D, except that in FIG. 31A throughFIG. 31D the prefilter is formed such that it has an RMS value of 1.34.A prefilter RMS value greater that 1.0 leads to noise amplificationgreater than one in the processed image.

FIG. 31A again represents an object to be imaged; FIG. 31B represents anintermediate image formed from FIG. 31A utilizing cosine optics thatimplement the same phase(r, θ) function described by Eq. 1 above. FIG.31C represents data corresponding to FIG. 31B after prefiltering with akernel formed with a value of b=2.1 in Eq. 2, leading to the prefilterRMS value of 1.34. FIG. 31D is obtained from FIG. 31C by implementingthe shock-filter routine described above in connection with FIG.30A-FIG. 30D. FIG. 31D may be seen to closely resemble the originalobject shown as item A, except that FIG. 31D contains artifacts due tothe prefilter used, as compared to FIG. 30D.

Nonlinear and spatially varying processing may also be utilized tocompensate for variations in optics induced, for example, bytemperature. A temperature detector in or near optics of an imagingsystem may provide input to a processor which may then determine afilter kernel that adjusts processing to compensate for the temperatureof the optics. For example, a system may derive a filter kernel forprocessing of each image, utilizing a parameter chosen, depending ontemperature of the optics, from a lookup table. Alternatively, a set offilter kernels may be stored, and a lookup table may be utilized to loadan appropriate filter kernel, depending on the temperature of theoptics.

FIG. 32A-FIG. 32D illustrate compensation for variation in opticsinduced by temperature. In a simulated optical system, operation at asecond temperature temp2 causes a second-order ½ wave defocus aberrationas compared to performance of the system at a nominal temperature temp1.This effect may be expressed as phase(r, θ)_(temp2)=phase(r,θ)_(temp1)+0.5 r², where 0≦r≦1. Therefore, a prefilter kernel that maybe utilized with a data stream acquired when optics are at temperaturetemp2 may be derived by dividing an autocorrelation ofe^(−j2π(phase(r,θ)) ^(temp2) ⁾ into the Gaussian target described in Eq.3 above. This transforms a representation of the filter in frequencyspace from the filter shown at left below, to the filter shown at rightbelow, both representations being shown in spatial coordinates:

FIG. 32A-FIG. 32D show images of the same object shown in FIG. 30A-FIG.30D and FIG. 31A-FIG. 31D, but for a system utilizing temperaturedependent optics. FIG. 32A represents an object to be imaged. FIG. 32Brepresents an intermediate image formed utilizing cosine optics thatimplement the same phase(r, θ) function described by Eq. 1 above at atemperature temp1, but the image in FIG. 32B is taken at a temperaturetemp2, adding ½ wave of misfocus aberration. FIG. 32C represents theelectronic data of FIG. 32B after prefiltering with a prefilter thatincludes the ½ wave misfocus aberration correction described above. FIG.32D is obtained from FIG. 32C by implementing the shock-filter routinedescribed above in connection with FIG. 30A-FIG. 30D. FIG. 32D may beseen to resemble the original object shown as FIG. 32A.

FIG. 33 shows an object 3300 to be imaged, and illustrates how colorintensity information may be utilized to determine spatially varyingprocessing. A diamond 3320 included in object 3300 has color informationbut not intensity information; that is, diamond 3320 is orange(represented by a first diagonal fill) while a background 3310 is gray(represented by a second diagonal fill), with diamond 3320 andbackground 3310 having the same overall intensity. Crossed bars 3330 inobject 3300 have both color and intensity information; that is, they arepink (represented by crossed horizontal and vertical fill) and arelighter than background 3310. The difference in the information contentof the different portions of object 3300 is illustrated below by way ofred-green-blue (“RGB”) and luminance-chrominance (“YUV”) images ofobject 3300, as shown in FIG. 34A-FIG. 34C and FIG. 35A-FIG. 35C. Notethat numerals 3310, 3320 and 3330 are utilized in the following drawingsto indicate the same background, diamond and crossed bars features shownin FIG. 33 even though the appearance of such features may differ fromappearance in FIG. 33.

FIG. 34A-FIG. 34C show RGB images obtained from imaging object 3300.Image 3400 shows data of the R (red) channel, image 3410 shows data ofthe G (green) channel and image 3420 shows data of the B (blue) channel.As may be seen in FIG. 34A-FIG. 34C, diamond 3320 and crossed bars 3330are clearly visible against background 3310 in each of images 3400, 3410and 3420.

However, when object 3300 is instead converted into luminance (Y) andchrominance (U and V) channels, diamond 3320 is not present in the Ychannel. FIG. 35A-FIG. 35C show YUV images obtained from imaging object3300. Image 3500 shows data of the Y (intensity) channel, image 3510shows data of the U (first chrominance) channel and image 3520 showsdata of the V (second chrominance) channel. U and V channel images 3510and 3520 do show both diamond 3320 and crossed bars 3330, but Y channelimage 3500 shows only crossed bars 3330, and not diamond 3320.

Therefore, diamond 3320 and crossed bars 3330 in object 3300 bothpresent information in each of three color (RGB) channels when processedin the RGB format (see FIG. 34A-FIG. 34C), but diamond 3320 presents noinformation in the Y channel (FIG. 35A) when processed in the YUVformat. Although YUV format is preferred in certain applications, lackof Y information may hinder effective reconstruction of an image.

Processing that detects an absence of intensity information and modifiesprocessing accordingly (sometimes referred to herein as “adaptivereconstruction”) may produce a superior processed image as compared to asystem that does not vary processing according to an absence ofintensity information (sometimes referred to herein as “non-adaptivereconstruction”). In other words, adaptive processing may improve aprocessed image when information is completely missing from one channel.

FIG. 36-FIG. 36C show electronic data 3600, 3610 and 3620 respectivelyof object 3300, taken through an imaging system that utilizes cosineoptics as described earlier, and converts the image into YUV format.Diamond 3320 is recognizable in each of the U and V electronic data 3610and 3620 respectively, but not in the Y electronic data 3600.

FIG. 37A-FIG. 37C illustrate results obtained when the YUV electronicdata shown in FIG. 36-FIG. 36C is processed and converted back into RGBformat. FIG. 37A-FIG. 37C show R electronic data 3700, G electronic data3710 and B electronic data 3720 respectively. Note that electronic datain each of the channels, and particularly G electronic data 3710, isdifferent from the original RGB data shown in FIG. 34A-FIG. 34C. In RGBelectronic data 3700, 3710 and 3720, generated with cosine optics,diamond 3320 is visible in all three R, G and B channels.

FIG. 38A-FIG. 38C illustrate results obtained when RGB reconstruction ofthe image uses only the Y channel of a YUV image. FIG. 38A-FIG. 38C showR electronic data 3800, G electronic data 3810 and B electronic data3820 respectively. Use of Y channel information alone is seen to resultin RGB images with degraded image quality in all channels.

FIG. 39A-FIG. 39C illustrate results obtained when YUV electronic data3600, 3610 and 3620 are processed and converted back into RGB format,with the processing varied according to the lack of intensityinformation (e.g., lack of diamond 3320) in electronic data 3600. FIG.39A-FIG. 39C show R electronic data 3900, G electronic data 3910 and Belectronic data 3920 respectively. Note that electronic data 3900, 3910and 3920 show diamond 3320 being “tighter”—that is, lines that arestraight in object 3300 are straighter—than in electronic data 3800,3810 and 3820 (FIG. 38). Also, electronic data 3910 (the green channel)looks more like object 3300 than does electronic data 3810. Therefore,reconstruction using all of the Y, U and V channels results in RGBimages with improved quality in all channels over reconstruction usingonly the Y channel.

Nonlinear Processing—Implementation

A variety of nonlinear operations may be classified as “operators”herein and may be utilized in a blur removal block (e.g., any of blurremoval and/or blur and filtering blocks 2540, FIG. 25; 2642, 2644, FIG.26, or 2742, 2744, FIG. 27). A threshold operator may, for example,discard or modify electronic data above or below a certain threshold(e.g., a pixel or color intensity value). The threshold operator maycreate a binary image, clip a bias or create saturation from a grayscaleimage, and may operate in the same manner for all data of an image ormay vary depending on the electronic data. An edge enhancement operatormay, for example, identify edges and modify the electronic data in thevicinity of the edges. The edge enhancement operator may utilize adifferentiator or directionally sensitive transforms, such as wavelettransforms, to identify edges, and may perform identical enhancement ofall edges in an image, or may vary the edge enhancement for variousparts of the image. An inflection emphasis operator may, for instance,identify inflections and modify the electronic data in the vicinity ofthe inflections. The inflection emphasis operator may include shockfilters and diffusion operators such as described in “Diffusion PDEs onVector-Valued Images”, IEEE Signal Processing Magazine, pp. 16-25, vol.19, no. 5, September 2002. The inflection emphasis operator may performidentical modification of all inflections in an image, or may vary themodification for various parts of the image. A gradient operator mayidentify gradients in electronic data and may modify the electronic dataidentically at all gradients in an image, or may vary the modificationfor various parts of the image. The gradient operator may be used toprocess images based on the difference between adjacent pixel values(e.g., a local gradient). A diffusion operator may identify homogeneousor inhomogeneous regions and may perform an operation on the homogeneousor inhomogeneous regions, or may identify the regions for additionalprocessing.

FIG. 40 illustrates how a blur removal block 4000 (e.g., any of blurremoval and/or blur and filtering blocks 2540, FIG. 25; 2642, 2644, FIG.26; or 2742, 2744, FIG. 27) may generate a weighted sum of nonlinearoperators. FIG. 40 shows blur removal blocks 4000 and 4002 (or anynumber M of blur removal blocks, as indicated by ellipsis) that processnonlinear operators and sum their outputs before passing electronic dataoutput 4080 and 4082 as output or for further image processing. Analysisof electronic data (e.g., by either of spatial parameter estimator block2730 or color parameter estimator block 2731, FIG. 27) may determineoptional processing parameters 4020 and 4022; alternatively, each ofblur removal blocks 4000 and 4002 may utilize fixed weighting. Theillustrated sequence of operations may be reversed; that is, eachchannel may apply nonlinear operators before applying a weight andsumming the outputs.

FIG. 41 illustrates how a blur removal block 4100 (e.g., any of blurremoval and/or blur and filtering blocks 2540, FIG. 25; 2642, 2644, FIG.26, or 2742, 2744, FIG. 27) may contain nonlinear operators that operatein a different fashion on different data sets of an image, or mayoperate on different image channels. Input electronic data channels4110, 4112 (and, as indicated by ellipsis, up to M electronic datachannels) may be operated on by different operators depending on imageinput parameters 4120, 4122 (and up to M corresponding inputparameters). Nonlinear operators shown in FIG. 41 include a thresholdoperator 4140, an edge enhancement operator 4142, an inflection emphasisoperator 4144, a gradient operator 4146 and a diffusion operator 4148,but other nonlinear operators may also be utilized. Output data 4180,4182, 4184, 4186 and 4188 may be passed as output or for further imageprocessing.

FIG. 42 illustrates how a blur removal block 4200 (e.g., any of blurremoval and/or blur and filtering blocks 2540, FIG. 25; 2642, 2644, FIG.26, or 2742, 2744, FIG. 27) may process electronic data from differentdata sets of an image, or from different channels, in either serial orparallel fashion, or recursively. Input electronic data channels 4210,4212 (and, as indicated by ellipsis, up to M electronic data channels)may be operated on by different operators depending on image inputparameters 4220 (and up to M corresponding input parameters, not shown,corresponding to the N input channels). Nonlinear operators shown inFIG. 42 include a threshold operator 4240, an edge enhancement operator4242, an inflection emphasis operator 4244, a gradient operator 4246 anda diffusion operator 4248, but other nonlinear operators may also beutilized. Output data 4288 may be passed as output or for further imageprocessing. Results from one nonlinear operator (e.g., partiallyprocessed electronic data) may thus be further processed by anothernonlinear operator before being passed on to the next part of the imageprocessing, as shown. Recursive processing may be employed; that is, agiven data stream may be processed repeatedly through any one of thenonlinear operators shown. When recursive processing is utilized, theprocessing may be repeated in a fixed sequence or number of iterations,or processing may proceed until a figure of merit for a resulting imageis met.

Systems utilizing nonlinear and/or spatially varying processing mayadvantageously utilize a prefilter to prepare data for furtherprocessing. A prefilter may accept as input electronic data andprocessing parameters for one or more image regions. A particularprefilter may utilize processing parameters and produce an output. Forexample, a prefilter may be an all-pass filter, a low-pass filter, ahigh-pass filter or a band-pass filter. Relationships between aprefilter type, processing parameters and output of the prefilter areshown in Table 3 below. TABLE 3 Prefilter types, processing parametersand outputs. Prefilter Type Processing Parameters Output All-passProcessed response Starting with a non-symmetric has no RMS valueresponse, forms a symmetric increase or decrease response that is bettersuited to non-linear signal processing that performs blur removalLow-pass Processed response Provides a smoother image that is has asmall decrease better suited to non-linear signal in RMS value,processing that performs 0.5 ≦ ΔRMS ≦ 1.0 aggressive blur removalBand-pass Processed response Provides a sharper image that is or has asmall increase better suited to non-linear signal High-pass in RMSvalue, processing that performs non- 1.0 ≦ ΔRMS ≦ 1.5 aggressive blurremoval

Additionally, an all-pass or low-pass filter may be desirable in lowsignal-to-noise applications where a band-pass or high-pass filter maycontribute to a poor processed image due to noise amplification.

Capture Of User Preferences For User-Optimized Processing

FIG. 43 shows a flowchart of a method 4300 for selecting processparameters for enhancing image characteristics. Method 4300 provides forquantifying processing parameters that relate to subjectivecharacteristics and factors that a particular user associates with imagequality. Method 4300 starts with an optional preparation step 4305wherein any necessary setup operations are performed. For example,exposure times, aperture and digital image formatting may be determinedor configured in step 4305. After step 4305, method 4300 advances tostep 4310 that provides an image for the user to evaluate. Step 4310 mayinclude capturing one or more images are using the settings determinedin step 4305, or step 4310 may provide the one or more images from alibrary of stored images. Next, in step 4315 a characteristic isselected; such characteristics may include, for example, sharpness,brightness, contrast, colorfulness and/or noisiness. In step 4320, animage provided by step 4310 is processed by an algorithm associated withthe selected characteristic. For example, if sharpness is the selectedcharacteristic, then a sharpening or de-sharpening algorithm is appliedto the image at varying degrees whereby producing a series of sharpenedor de-sharpened images. Next, in step 4325, the series of processedimages are presented through a display device to the user for review.The series of images may include, for example, a set of three imagesthat are individually unsharpened, lightly sharpened and heavilysharpened by applying a default set of sharpening parameters (a set ofthree images is exemplary; two, four or more images may also bepresented). In step 4330, the user determines if any of the images areacceptable as an enhanced image. If none of the presented images isacceptable, method 4300 advances to step 4335, in which processingvariations may be requested (e.g., more or less sharpening), and returnsto step 4320. If one or more of the presented images are acceptable, theimage most acceptable to the user is selected during step 4340. Once animage has been selected during step 4340, the settings and parametersassociated with processing of the selected characteristic are stored forlater retrieval. Next, in step 4350, the user is presented with anoption to select and modify further characteristics of the image. If adecision is made to modify another characteristic then method 4300returns to step 4315 via looping pathway 4335 and another characteristicmay be selected. If a decision is made to not modify othercharacteristics then method 4300 proceeds to step 4360 wherein theprocessed image is presented. Following presentation, method 4300 endswith an end step 4365 wherein finalization tasks such as clearing memoryor a display device may be performed.

The changes described above, and others, may be made in the nonlinearand/or spatially varying processing described herein without departingfrom the scope hereof. It should thus be noted that the matter containedin the above description or shown in the accompanying drawings should beinterpreted as illustrative and not in a limiting sense. The followingclaims are intended to cover all generic and specific features describedherein, as well as all statements of the scope of the present method andsystem, which, as a matter of language, might be said to fall therebetween.

1. An imaging system, comprising optics having one or more phasemodifying elements that modify wavefront phase to introduce one or moreimage attributes into an optical image; a detector that converts theoptical image to electronic data while maintaining the image attributes;and a digital signal processor for subdividing the electronic data intoone or more data sets, classifying the one or more data sets based atleast on the image attributes, and independently processing the one ormore data sets, based on results of the classifying, to form processedelectronic data.
 2. The imaging system of claim 1, wherein the imagingsystem has extended depth of field as compared to the system without theone or more phase modifying elements.
 3. The imaging system of claim 1,wherein the digital signal processor is configured for classifying theone or more data sets based on (a) characteristics of the electronicdata related to spatial regions of the optical image, and (b) the one ormore image attributes.
 4. The imaging system of claim 3, wherein thedigital signal processor is further configured for classifying the oneor more data sets based on power spectrum estimates for each of aplurality of identification subsets within the electronic data.
 5. Theimaging system of claim 4, wherein the digital signal processor isfurther configured for combining identification subsets with similarpower spectrum estimates, to form the one or more data sets.
 6. Theimaging system of claim 4, wherein the digital signal processor isconfigured for (a) identifying dominant spatial frequencies in one ormore of the power spectrum estimates, and (b) independently processingthe one or more data sets by generating a filter for each of the datasets, based on the dominant spatial frequencies, to form the processedelectronic data.
 7. The imaging system of claim 3, wherein the digitalsignal processor is configured for identifying at least one edge in oneof the spatial regions by utilizing one of Sobel, Prewitt, Roberts,Laplacian of Gaussian, zero cross and Canny methods.
 8. The imagingsystem of claim 1, wherein the electronic data comprises one or morecolor channels.
 9. The imaging system of claim 8, wherein the digitalsignal processor is configured for classifying the one or more data setsbased on color information content of the one or more color channels.10. The imaging system of claim 8, wherein the digital signal processoris further configured for classifying the one or more data sets based onspatial frequency information within the one or more color channels. 11.The imaging system of claim 8, wherein the digital signal processor isfurther configured for classifying the one or more data sets based onintensity information within the one or more color channels.
 12. Theimaging system of claim 1, wherein the electronic data comprises one ormore intensity channels.
 13. The imaging system of claim 12, wherein thedigital signal processor is configured for classifying the one or moredata sets based on intensity content of the one or more intensitychannels.
 14. The imaging system of claim 1, wherein the electronic datacomprises a plurality of channels, each channel including at least colorcontent and intensity content.
 15. The imaging system of claim 14,wherein the digital signal processor is configured for classifying theone or more data sets based on the color content and intensity contentof the plurality of channels.
 16. The imaging system of claim 1, whereinthe phase modifying element implements wavefront coding.
 17. The imagingsystem of claim 1, wherein the one or more image attributes includes ablur that is removable by the digital signal processor.
 18. The imagingsystem of claim 1, wherein the optics are characterized by a PSF havinga shape that is substantially invariant with respect to misfocus. 19.The imaging system of claim 1, wherein the optics, the detector and thedigital signal processor are located within a common system housing. 20.The imaging system of claim 1, wherein the optics and the detector areat a first location and the digital signal processor is at a secondlocation.
 21. The imaging system of claim 1, wherein the digital signalprocessor is further configured for operating on the electronic data inparallel with the detector converting the optical image to theelectronic data.
 22. The imaging system of claim 1, wherein the digitalsignal processor is configured for operating on the electronic dataafter the detector converts substantially all of the optical image tothe electronic data.
 23. The imaging system of claim 1, wherein thedigital signal processor is further configured for classifying the oneor more data sets in accordance with preset instructions.
 24. Theimaging system of claim 23, wherein the preset instructions are based onpreferences of a user of the imaging system.
 25. The imaging system ofclaim 23, wherein the preset instructions are based on the one or moreimage attributes.
 26. The imaging system of claim 1, wherein the digitalsignal processor is additionally configured for recursively subdividingthe electronic data into one or more data sets, classifying the one ormore data sets, based at least on the image attributes, andindependently processing the one or more data sets, based on results ofthe classifying, to form the processed electronic data.
 27. An imagingsystem, comprising optics having one or more phase modifying elementsthat modify wavefront phase to form an optical image; a detector thatconverts the optical image to electronic data having one or more imageattributes that are dependent on characteristics of at least one of thephase modifying elements and the detector; and a digital signalprocessor for subdividing the electronic data into one or more datasets, classifying the one or more data sets, based at least in part onthe one or more image attributes, and independently processing each ofthe one or more data sets, based on results of classifying, to formprocessed electronic data.
 28. The imaging system of claim 27, whereinthe one or more image attributes includes a blur induced by the one ormore phase modifying elements.
 29. The imaging system of claim 27,wherein the one or more image attributes includes one or more of shotnoise and fixed pattern noise characterizing the detector.
 30. Theimaging system of claim 27, wherein the electronic data further includesa plurality of subspaces.
 31. The imaging system of claim 30, whereinthe plurality of subspaces includes one or more signal subspaces andnoise subspaces.
 32. The imaging system of claim 27, wherein the digitalsignal processor alters one or more of the image attributes to a degreethat is independently adjustable for each of the data sets, based on theone or more image attributes of the data sets.
 33. The imaging system ofclaim 27, wherein the digital signal processor alters one or more of theimage attributes to a degree that is independently adjustable for eachof the data sets, based on preset instructions.
 34. The imaging systemof claim 33, wherein the preset instructions are based on preferences ofa user of the imaging system.
 35. An imaging system, comprising opticshaving one or more phase modifying elements that modify wavefront phaseto introduce one or more image attributes into an optical image; adetector that converts the optical image to electronic data whilemaintaining the image attributes; and a digital signal processorconfigured for subdividing the electronic data into one or more datasets, classifying the one or more data sets based at least on the imageattributes, and independently processing the one or more data sets,based on results of the classifying, to form processed electronic data,wherein the digital signal processor is further configured for alteringone or more of the image attributes to a degree that is independentlyadjustable for each of the one or more data sets, based on presetinstructions.
 36. The imaging system of claim 35, wherein the presetinstructions are based on one of preferences of a user of the imagingsystem and a characteristic of the one or more phase modifying elements.37. An imaging system, comprising optics having one or more phasemodifying elements that modify wavefront phase to predeterministicallyaffect an optical image; a detector that converts the optical image toelectronic data; a digital signal processor for subdividing theelectronic data into one or more data sets, classifying the data sets,based at least in part on a priori knowledge about how the phasemodifying elements modify the wavefront phase, and independentlyprocessing each of the data sets, based on results of the classifying,to form processed electronic data.
 38. An imaging system, comprisingoptics having one or more phase modifying elements that modify wavefrontphase to predeterministically affect an optical image; a detector thatconverts the optical image to electronic data; a digital signalprocessor for subdividing the electronic data into one or more datasets, independently processing each of the data sets, based on a prioriknowledge about how the phase modifying elements modify the wavefrontphase and on results of the classifying, to form processed electronicdata.
 39. An imaging system, comprising optics, including one or morephase modifying elements, that alter wavefront phase and produce anoptical image with at least one known image attribute; a detector thatconverts the optical image to electronic data that, while preserving theimage attribute, is divisible into a plurality of data sets; and adigital signal processor that processes the data sets to modify theimage attribute in a degree and manner that is independently adjustablefor each one of the data sets, to generate processed electronic data.40. An imaging system, comprising optics having one or more phasemodifying elements that modify wavefront phase to introduce one or moreimage attributes into an optical image; a detector that converts theoptical image to electronic data while maintaining the image attributes;and a digital signal processor for determining one or morecharacteristics of the electronic data, and providing nonlinearprocessing of the electronic data to modify the image attribute and toform processed electronic data.
 41. The imaging system of claim 40,wherein the imaging system has extended depth of field as compared tothe system without the one or more phase modifying elements.
 42. Theimaging system of claim 40, wherein the digital signal processorutilizes a shock-filter routine for the nonlinear processing.
 43. Theimaging system of claim 40, wherein the digital signal processorimplements one or more of a threshold operator, an edge enhancementoperator, an inflection emphasis operator, a gradient operator, and adiffusion operator for the nonlinear processing.
 44. The imaging systemof claim 40, wherein the digital signal processor (a) implements two ormore process operators, each process operator being one of a thresholdoperator, an edge enhancement operator, an inflection emphasis operator,a gradient operator, and a diffusion operator, (b) assigns a weight toeach process operator and (c) sums the process operators according tothe weight of each process operator.
 45. The imaging system of claim 44,wherein the weight assigned to each process operator is optimized forone of spatial noise reduction and color noise reduction.
 46. Theimaging system of claim 40, wherein the one or more phase modifyingelements implement wavefront coding.
 47. The imaging system of claim 40,wherein the one or more image attributes includes introducing a blurthat is removable by processing of the electronic data.
 48. The imagingsystem of claim 40, wherein the one or more image attributes includescausing a PSF associated with the optics to have a shape that issubstantially invariant with respect to misfocus.
 49. An imaging system,comprising optics having one or more phase modifying elements thatmodify wavefront phase to introduce one or more image attributes into anoptical image; a detector that converts the optical image to electronicdata while maintaining the image attributes; and a digital signalprocessor for subdividing the electronic data into one or more datasets, classifying the one or more data sets, based at least on the imageattributes, and independently and nonlinearly processing the one or moredata sets to form processed electronic data.
 50. A method for generatingprocessed electronic data, comprising modifying phase of a wavefrontfrom an object to introduce one or more image attributes into an opticalimage formed by an imaging system, converting the optical image toelectronic data while maintaining the image attributes, subdividing theelectronic data into one or more data sets, classifying the one or moredata sets based at least on the one or more image attributes, andindependently processing the one or more data sets to form processedelectronic data.
 51. Method of claim 50, wherein modifying phase extendsa depth of field of the imaging system.
 52. Method of claim 50, whereinclassifying the one or more data sets is based on (a) characteristics ofthe electronic data related to spatial regions of the optical image, and(b) the one or more image attributes.
 53. Method of claim 52, whereinclassifying the one or more data sets is based on power spectrumestimates for each of a plurality of identification subsets within theelectronic data.
 54. Method of claim 53, wherein classifying comprisescombining identification subsets with similar power spectrum estimatesto form the one or more data sets.
 55. Method of claim 53, whereinclassifying comprises identifying dominant spatial frequencies in one ormore of the power spectrum estimates, and independently processingcomprises generating a corresponding filter for each of the data sets,based on the dominant spatial frequencies of each data set and filteringeach of the data sets with its corresponding filter to form theprocessed electronic data.
 56. Method of claim 52, wherein classifyingcomprises identifying at least one edge in one of the spatial regions byutilizing one of Sobel, Prewitt, Roberts, Laplacian of Gaussian, zerocross and Canny methods.
 57. Method of claim 50, wherein converting theoptical image to electronic data comprises generating one or more colorchannels.
 58. Method of claim 57, wherein classifying further comprisesclassifying based on color information content of the one or more colorchannels.
 59. Method of claim 57, wherein classifying further comprisesclassifying the one or more data sets based on spatial frequencyinformation within the one or more color channels.
 60. Method of claim57, wherein classifying further comprises classifying the one or moredata sets based on intensity information within the one or more colorchannels.
 61. Method of claim 50, wherein modifying phase comprisesutilizing wavefront coding.
 62. Method of claim 50, wherein modifyingphase comprises introducing a blur that is removable by digital signalprocessing as one of the one or more image attributes.
 63. Method ofclaim 50, wherein modifying phase comprises causing a PSF of the imagingsystem to have a shape that is substantially invariant with respect tomisfocus.
 64. Method of claim 50, wherein the subdividing, classifyingand independently processing occur in parallel with the modifying andconverting.
 65. Method of claim 50, wherein the modifying and convertingoccur at one time and the subdividing, classifying and independentlyprocessing occur at a later time.
 66. Method of claim 50, whereinclassifying is performed in accordance with preset instructions. 67.Method of claim 66, further comprising generating the presetinstructions according to preferences of a user of the imaging system.68. Method of claim 50, wherein the steps of subdividing, classifyingand independently processing are performed recursively.
 69. A softwareproduct comprising instructions stored on computer-readable media,wherein the instructions, when executed by a computer, perform steps forprocessing electronic data generated by (a) modifying phase of awavefront from an object to introduce one or more image attributes intoan optical image formed by an imaging system and (b) converting theoptical image to electronic data while maintaining the image attributes,the instructions comprising: instructions for subdividing the electronicdata into one or more data sets; instructions for classifying the one ormore data sets based at least on the one or more image attributes; andinstructions for independently processing the one or more data sets toform the processed electronic data.
 70. Software product of claim 69,wherein the instructions for classifying include instructions forevaluating one of (a) characteristics of the electronic data related tospatial regions of the optical image and (b) the one or more imageattributes.
 71. Software product of claim 69, wherein the instructionsfor classifying include instructions for generating a power spectrumestimate for each of a plurality of identification subsets within theelectronic data.
 72. Software product of claim 71, wherein theinstructions for classifying include instructions for combiningidentification subsets with similar power spectrum estimates to form theone or more data sets.
 73. Software product of claim 71, wherein theinstructions for classifying include instructions for identifyingdominant spatial frequencies in one or more of the power spectrumestimates, and the instructions for independently processing includeinstructions for generating a corresponding filter for each of the datasets, based on the dominant spatial frequencies of each data set andinstructions for filtering each of the data sets with its correspondingfilter to form the processed electronic data.
 74. Software product ofclaim 69, wherein the instructions for classifying include instructionsfor identifying at least one edge in one of the spatial regions byutilizing one of Sobel, Prewitt, Roberts, Laplacian of Gaussian, zerocross and Canny methods.
 75. Software product of claim 69, wherein theinstructions for classifying include instructions for utilizing one of(a) color information content, (b) spatial frequency information and (c)intensity information of one or more color channels of the electronicdata.
 76. Software product of claim 69, wherein the instructions forsubdividing, classifying and independently processing, respectively,include instructions for subdividing, classifying and independentlyprocessing in accordance with user preferences.
 77. Software product ofclaim 69, further comprising instructions for recursively subdividingthe electronic data into one or more data sets, classifying the one ormore data sets based at least on the one or more image attributes; andprocessing the one or more data sets to form processed electronic data.78. An imaging system, comprising optics having one or more phasemodifying elements that modify wavefront phase to introduce one or moreimage attributes into an optical image; a detector that converts theoptical image to electronic data while maintaining the image attributes;and a digital signal processor for subdividing the electronic data intoone or more data sets, independently processing the one or more datasets in one or more subspaces to form processed electronic data.
 79. Theimaging system of claim 78, wherein the digital signal processor isfurther configured for classifying the one or more data sets, andwherein the independently processing comprises independently processingthe one or more subspaces based on results of the classifying.
 80. Amethod for generating processed electronic data, comprising modifyingphase of a wavefront from an object to introduce one or more imageattributes into an optical image formed by an imaging system; convertingthe optical image to electronic data while maintaining the imageattributes; subdividing the electronic data into one or more data sets;and independently processing the one or more data sets in one or moresubspaces to form processed electronic data.